Changeset 832


Ignore:
Timestamp:
06/05/09 18:01:19 (15 years ago)
Author:
Eric.Larour
Message:

Debugging rgbs. Invert is not working. Need Plapack, but what about serial? Use Matlab? FSTD

Location:
issm/trunk/src
Files:
1 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/BuildNodeSetsx/BuildNodeSetsx.cpp

    r304 r832  
    5353                nodes->FlagNodeSets(flag_pv_g,flag_pv_m,flag_pv_n,flag_pv_f,flag_pv_s);
    5454
     55
    5556                /*Now, every cpu has 4 flag vectors, of size gsize. Create partition vectors (like a pos=find(flag_pv_g) in matlab*/
    5657                PartitionSets(&vec_pv_m,&vec_pv_n,flag_pv_g,flag_pv_m,flag_pv_n,gsize); /*! split g set into m and n sets*/
    5758                PartitionSets(&vec_pv_f,&vec_pv_s,flag_pv_n,flag_pv_f,flag_pv_s,gsize); /*! split n set into f and s sets*/
    58 
     59               
    5960                /*Free ressources:*/
    6061                VecFree(&flag_pv_g);
  • issm/trunk/src/c/DataSet/DataSet.cpp

    r823 r832  
    813813                        }
    814814                        else{
    815                                 /*Ok, this cpu owns both nodes. Put dof for node1 into m set: */
    816                                 node1->DofInMSet(dof-1);
     815                                /*Ok, this cpu owns both nodes. Put dof for node1 into m set, unless it is already there,
     816                                 * in which case node2 gets into the m set: */
     817                                if(node1->DofIsInMSet(dof-1)){
     818                                        node2->DofInMSet(dof-1);
     819                                }
     820                                else{
     821                                        node1->DofInMSet(dof-1);
     822                                }
    817823                               
    818 
    819824                                /*Plug values into Rmg. We essentially want dofs from node1 and node2 to be the
    820825                                 *same: */
  • issm/trunk/src/c/NormalizeConstraintsx/NormalizeConstraintsx.cpp

    r304 r832  
    3838                        /*Build row partitioning vector for Rmm and Rmn: */
    3939                        row_m=(double*)xmalloc(msize*sizeof(double));
    40                         for(i=0;i<msize;i++)row_m[i]=i+1; //matlab indexing
    41 
     40                        for(i=0;i<msize;i++)row_m[i]=i+1; //matlab indexing for nodesets
     41                       
    4242                        /*Partition Rmg into Rmm and Rmn: */
    4343                        MatPartition(&Rmm,Rmg,row_m,msize,pv_m,msize); //equivalent of Rmm=Rmg(:,mset);
    4444                        MatPartition(&Rmn,Rmg,row_m,msize,pv_n,nsize);
     45                       
     46                        MatView(Rmm,PETSC_VIEWER_STDOUT_WORLD);
    4547
    4648                        /*Invert Rmm: */
  • issm/trunk/src/c/objects/Node.cpp

    r816 r832  
    419419        sset[dof]=0;
    420420}
    421                
     421
     422int  Node::DofIsInMSet(int dof){
     423
     424        if (mset[dof])return 1;
     425        else return 0;
     426
     427}
    422428
    423429int   Node::GetDof(int dofindex){
  • issm/trunk/src/c/objects/Node.h

    r816 r832  
    6666                void  DofInSSet(int dof);
    6767                void  DofInMSet(int dof);
     68                 int  DofIsInMSet(int dof);
    6869                int   GetDof(int dofindex);
    6970                void  CreateVecSets(Vec pv_g,Vec pv_m,Vec pv_n,Vec pv_f,Vec pv_s);
  • issm/trunk/src/m/solutions/cielo/CreateFemModel.m

    r302 r832  
    2525        displaystring(md.debug,'%s','   reducing single point constraints vector...');
    2626        [m.ys m.ys0]=Reducevectorgtos(m.yg,m.nodesets);
    27 
     27       
    2828        displaystring(md.debug,'%s','   normalizing rigid body constraints matrix...');
    2929        m.Gmn = NormalizeConstraints(m.Rmg,m.nodesets);
    30        
     30
    3131        displaystring(md.debug,'%s','   configuring element and loads...');
    3232        [m.elements,m.loads,m.nodes] = ConfigureObjects( m.elements, m.loads, m.nodes, m.materials);
  • issm/trunk/src/m/solutions/ice/CreateFemModel.m

    r36 r832  
    2424Rmg=MpcGrids(grids,constraints);
    2525
     26
    2627%generate grid sets and reduce yg to ys from g-set to s-set.
    2728BuildGridSets(grids,constraints); ys=Reducevector_g(yg);
    2829
    29 %buile Gmn
     30%build Gmn
    3031Gmn=Normalizeconstraints(Rmg);
     32
     33spy(Gmn)
    3134
    3235%recover dof number
Note: See TracChangeset for help on using the changeset viewer.