Changeset 16200


Ignore:
Timestamp:
09/20/13 09:44:53 (12 years ago)
Author:
Mathieu Morlighem
Message:

CHG: cpperrors and simplifying COnstraintState (to be continued)

Location:
issm/trunk-jpl/src/c
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/bamg/Mesh.cpp

    r16166 r16200  
    10531053
    10541054                /*Get options*/
    1055                 int    verbose  = bamgopts->verbose;
    10561055                double anisomax = bamgopts->anisomax;
    10571056                double errg     = bamgopts->errg;
     
    33123311
    33133312                long NbSwapf =0;
    3314 
    33153313                for(i=0;i<nbv;i++) NbSwapf += vertices[i].Optim(0);
    33163314        }/*}}}*/
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r16188 r16200  
    33063306
    33073307        /*Spawn material*/
    3308         tria->material=NULL;
    33093308        tria->material=(Material*)this->material->copy();
    33103309        delete tria->material->inputs;
  • issm/trunk-jpl/src/c/classes/gauss/GaussTria.cpp

    r15694 r16200  
    4444        IssmPDouble *seg_weights = NULL;
    4545        IssmDouble  a1,b1,c1,a2,b2,c2;
    46         int     i,index3;
    4746
    4847        /*Get Segment gauss points*/
     
    8382
    8483        /*Build Triangle Gauss point*/
    85         for(i=0;i<numgauss;i++){
     84        for(int i=0;i<numgauss;i++){
    8685                coords1[i]=0.5*(a1+a2) + 0.5*seg_coords[i]*(a2-a1);
    8786                coords2[i]=0.5*(b1+b2) + 0.5*seg_coords[i]*(b2-b1);
     
    107106        IssmPDouble *seg_coords  = NULL;
    108107        IssmPDouble *seg_weights = NULL;
    109         int     i,index3;
    110108
    111109        /*Get Segment gauss points*/
     
    120118
    121119        /*Build Triangle Gauss point*/
    122         for(i=0;i<numgauss;i++){
     120        for(int i=0;i<numgauss;i++){
    123121                coords1[i]=0.5*(area_coordinates[0][0]+area_coordinates[1][0]) + 0.5*seg_coords[i]*(area_coordinates[1][0]-area_coordinates[0][0]);
    124122                coords2[i]=0.5*(area_coordinates[0][1]+area_coordinates[1][1]) + 0.5*seg_coords[i]*(area_coordinates[1][1]-area_coordinates[0][1]);
  • issm/trunk-jpl/src/c/modules/ConstraintsStatex/ConstraintsStatex.cpp

    r16197 r16200  
    1111
    1212        /*output: */
    13         int converged                  = 0;
    14         int num_unstable_constraints   = 0;
    15         int min_mechanical_constraints = 0;
     13        int converged                     = 1;
     14        int num_unstable_constraints      = 0;
     15        int min_mechanical_constraints    = 0;
     16        int  unstable                     = 0;
     17        int  sum_num_unstable_constraints = 0;
    1618        int analysis_type;
    1719
     
    2325        femmodel->parameters->FindParam(&analysis_type,AnalysisTypeEnum);
    2426
    25         /*Do we have penalties linked to rifts? In this case, run our special rifts penalty
    26          * management routine, otherwise, skip : */
    27 
    28         /*No constraints management by default!:*/
    29         num_unstable_constraints=0;
    30         converged=1;
    31 
     27        /*Rift penalties first*/
    3228        #ifdef _HAVE_RIFTS_
    3329        if(RiftIsPresent(femmodel->loads,analysis_type)){
    34 
    3530                RiftConstraintsState(&converged,&num_unstable_constraints,femmodel->loads,min_mechanical_constraints,analysis_type);
    3631        }
    3732        #endif
    3833
    39         /*FIXME: this function is actually called by Hydrology and damage evolution. Should be renamed*/
    40         #ifdef _HAVE_THERMAL_
    41         if(PengridIsPresent(femmodel->loads,analysis_type)){
    42                 ThermalConstraintsState(femmodel->loads,&converged,&num_unstable_constraints,analysis_type);
     34        /*Deal with pengrid*/
     35        for(int i=0;i<femmodel->loads->Size();i++){
     36                Load* load=(Load*)femmodel->loads->GetObjectByOffset(i);
     37                if(load->InAnalysis(analysis_type)){
     38                        if(load->ObjectEnum()==PengridEnum){
     39                                Pengrid* pengrid=(Pengrid*)load;
     40                                pengrid->ConstraintActivate(&unstable);
     41                                num_unstable_constraints += unstable;
     42                        }
     43                }
    4344        }
    44         #endif
     45        ISSM_MPI_Reduce(&num_unstable_constraints,&sum_num_unstable_constraints,1,ISSM_MPI_INT,ISSM_MPI_SUM,0,IssmComm::GetComm() );
     46        ISSM_MPI_Bcast(&sum_num_unstable_constraints,1,ISSM_MPI_INT,0,IssmComm::GetComm());               
     47        num_unstable_constraints=sum_num_unstable_constraints;
     48
     49        /*Have we converged? : */
     50        if(num_unstable_constraints) converged=0;
    4551
    4652        /*Assign output pointers: */
    47         *pconverged=converged;
    48         *pnum_unstable_constraints=num_unstable_constraints;
     53        *pconverged                = converged;
     54        *pnum_unstable_constraints = num_unstable_constraints;
    4955}
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/Enthalpy/CreateConstraintsEnthalpy.cpp

    r15465 r16200  
    1111
    1212        /*Intermediary*/
    13         int        i,j;
    1413        int        count;
    1514        int        M,N;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/FreeSurfaceBase/CreateLoadsFreeSurfaceBase.cpp

    r15877 r16200  
    1010
    1111        /*Intermediaries*/
    12         int element;
    1312        int penpair_ids[2];
    1413        int count=0;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/FreeSurfaceBase/UpdateElementsFreeSurfaceBase.cpp

    r15986 r16200  
    1111void    UpdateElementsFreeSurfaceBase(Elements* elements, IoModel* iomodel,int analysis_counter,int analysis_type){
    1212
    13         int    finiteelement;
    14         bool   dakota_analysis;
    15 
    1613        /*Now, is the model 3d? otherwise, do nothing: */
    1714        if (iomodel->dim==2)return;
    1815
    1916        /*Finite element type*/
    20         finiteelement = P1Enum;
     17        int finiteelement = P1Enum;
    2118
    2219        /*Update elements: */
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/FreeSurfaceTop/CreateLoadsFreeSurfaceTop.cpp

    r15877 r16200  
    1010
    1111        /*Intermediaries*/
    12         int element;
    1312        int penpair_ids[2];
    1413        int count=0;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/FreeSurfaceTop/UpdateElementsFreeSurfaceTop.cpp

    r15986 r16200  
    1111void    UpdateElementsFreeSurfaceTop(Elements* elements, IoModel* iomodel,int analysis_counter,int analysis_type){
    1212
    13         int    finiteelement;
    14         bool   dakota_analysis;
    15 
    1613        /*Now, is the model 3d? otherwise, do nothing: */
    1714        if (iomodel->dim==2)return;
    1815
    19         finiteelement = P1Enum;
     16        int finiteelement = P1Enum;
    2017
    2118        /*Update elements: */
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/HydrologyShreve/CreateParametersHydrologyShreve.cpp

    r15000 r16200  
    1212        Parameters *parameters = NULL;
    1313        int         hydrology_model;
    14         bool        isefficientlayer;
    1514
    1615        /*Get parameters: */
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/NodesPartitioning.cpp

    r15643 r16200  
    4646        /*Intermediaries*/
    4747        int  i,i1,i2;
    48         int  cols;
    4948        int  e1,e2;
    5049        int  pos;
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/Stressbalance/CreateLoadsStressbalance.cpp

    r16164 r16200  
    1010
    1111        /*Intermediary*/
    12         int         segment_width;
    13         int         element;
    1412        int         i;
    1513        int         count;
Note: See TracChangeset for help on using the changeset viewer.