Changeset 3624


Ignore:
Timestamp:
04/27/10 08:27:44 (15 years ago)
Author:
Eric.Larour
Message:

new pengrid constructor

Location:
issm/trunk/src/c/ModelProcessorx
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/ModelProcessorx/DiagnosticStokes/CreateLoadsDiagnosticStokes.cpp

    r3567 r3624  
    6868        IoModelFetchData(&iomodel->gridonicesheet,NULL,NULL,iomodel_handle,"gridonicesheet");
    6969        IoModelFetchData(&iomodel->gridonstokes,NULL,NULL,iomodel_handle,"gridonstokes");
     70        iomodel->CreateSingleNodeToElementConnectivity;
    7071       
    7172        for (i=0;i<iomodel->numberofvertices;i++){
    72                 /*keep only this partition's nodes:*/
     73               
    7374                if((iomodel->my_vertices[i]==1)){
    7475
    7576                        if ((iomodel->gridonbed[i]) && (iomodel->gridonicesheet[i]) && (iomodel->gridonstokes[i])){
    76 
    77                                 loads->AddObject(new Pengrid(count+1, i+1,iomodel->numberofelements+1,1, 0, iomodel->penalty_offset,1,iomodel->stabilize_constraints));
    78                                 count++;
     77                               
     78                                loads->AddObject(new Pengrid(count,i,iomodel));
    7979                        }
    8080                } //if((iomodel->my_vertices[i]==1))
     
    8484        xfree((void**)&iomodel->gridonstokes);
    8585        xfree((void**)&iomodel->gridonicesheet);
     86        xfree((void**)&iomodel->singlenodetoelementconnectivity);
    8687
    8788        /*All our datasets are already order by ids. Set presort flag so that later on, when sorting is requested on these
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateLoadsMelting.cpp

    r3567 r3624  
    1313
    1414        int i;
    15         int count=0;
    1615
    1716        DataSet*    loads    = NULL;
     
    2524        //create penalties for grids: no grid can have a temperature over the melting point
    2625        IoModelFetchData(&iomodel->gridonbed,NULL,NULL,iomodel_handle,"gridonbed");
     26        iomodel->CreateSingleNodeToElementConnectivity;
    2727
    28         count=1; //matlab indexing
    2928        for (i=0;i<iomodel->numberofvertices;i++){
    30                 /*keep only this partition's nodes:*/
     29               
    3130                if((iomodel->my_vertices[i]==1)){
    3231
    3332                        if (iomodel->gridonbed[i]){
    34 
    35                                 loads->AddObject( new Pengrid(count+1, i+1,iomodel->numberofelements+1, 1, 0, iomodel->penalty_offset, 1, iomodel->stabilize_constraints));
    36                                 count++;
     33                               
     34                                loads->AddObject(new Pengrid(i+1,i,iomodel));
    3735                        }
    38                 } //if((iomodel->my_vertices[i]==1))
     36                }
    3937        }
    4038        xfree((void**)&iomodel->gridonbed);
     39        xfree((void**)&iomodel->singlenodetoelementconnectivity);
    4140
    4241        /*All our datasets are already order by ids. Set presort flag so that later on, when sorting is requested on these
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateLoadsThermal.cpp

    r3567 r3624  
    1313
    1414        int i;
    15         int count=0;
    1615
    1716        DataSet*    loads    = NULL;
     
    2625        //create penalties for grids: no grid can have a temperature over the melting point
    2726        IoModelFetchData(&iomodel->spctemperature,NULL,NULL,iomodel_handle,"spctemperature");
     27        iomodel->CreateSingleNodeToElementConnectivity;
    2828
    29         count=1; //matlab indexing
    3029        for (i=0;i<iomodel->numberofvertices;i++){
     30       
    3131                /*keep only this partition's nodes:*/
    3232                if((iomodel->my_vertices[i]==1)){
     
    3434                        if (!iomodel->spctemperature[2*i]){ //No penalty applied on spc grids!
    3535
    36                                 loads->AddObject( new Pengrid(count+1, i+1,iomodel->numberofelements+1,1, 0, iomodel->penalty_offset,1,iomodel->stabilize_constraints));
    37                                 count++;
     36                                loads->AddObject(new Pengrid(i+1,i,iomodel));
     37                                               
    3838                        }
    39                 } //if((iomodel->my_vertices[i]==1))
     39                }
    4040        }
    4141        xfree((void**)&iomodel->spctemperature);
     42        xfree((void**)&iomodel->singlenodetoelementconnectivity);
    4243
    4344        /*All our datasets are already order by ids. Set presort flag so that later on, when sorting is requested on these
     
    5152
    5253}
     54                               
     55
Note: See TracChangeset for help on using the changeset viewer.