Changeset 15433


Ignore:
Timestamp:
07/04/13 17:14:42 (12 years ago)
Author:
Mathieu Morlighem
Message:

CHG: tria's do not need neighbors' ids, so do not need to marshall md.mesh.elementconnectivity

Location:
issm/trunk-jpl/src
Files:
1 deleted
13 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/Elements/Element.h

    r15387 r15433  
    7575                virtual void   GetVectorFromResults(Vector<IssmDouble>* vector,int id,int enum_in,int interp)=0;
    7676                virtual void   InputArtificialNoise(int enum_type,IssmDouble min,IssmDouble max)=0;
    77                 virtual int*   GetHorizontalNeighboorSids(void)=0;
    7877                virtual IssmDouble TimeAdapt()=0;
    7978                virtual void   PositiveDegreeDay(IssmDouble* pdds,IssmDouble* pds,IssmDouble signorm)=0;
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r15428 r15433  
    3131        this->parameters        = NULL;
    3232        this->results           = NULL;
    33         for(int i=0;i<3;i++)this->horizontalneighborsids[i]=UNDEF;
    3433}
    3534/*}}}*/
     
    6665        else                                    penta_elements_ids[0]=reCast<int,IssmDouble>((iomodel->Data(MeshLowerelementsEnum)[index]));
    6766        this->InitHookNeighbors(penta_elements_ids);
    68 
    69         /*Build horizontalneighborsids list: */
    70         _assert_(iomodel->Data(MeshElementconnectivityEnum));
    71         for(i=0;i<3;i++) this->horizontalneighborsids[i]=reCast<int,IssmDouble>(iomodel->Data(MeshElementconnectivityEnum)[3*index+i])-1;
    7267
    7368        //this->parameters: we still can't point to it, it may not even exist. Configure will handle this.
     
    133128        penta->matpar=(Matpar*)penta->hmatpar->delivers();
    134129        penta->verticalneighbors=(Penta**)penta->hneighbors->deliverp();
    135 
    136         /*neighbors: */
    137         for(i=0;i<3;i++)penta->horizontalneighborsids[i]=this->horizontalneighborsids[i];
    138130
    139131        return penta;
     
    696688        _printf_("   results\n");
    697689        results->DeepEcho();
    698         _printf_("neighboor sids: \n");
    699         _printf_(" " << horizontalneighborsids[0] << " " << horizontalneighborsids[1] << " " << horizontalneighborsids[2] << "\n");
    700690}
    701691/*}}}*/
     
    992982        *hy=ymax-ymin;
    993983        *hz=zmax-zmin;
    994 }
    995 /*}}}*/
    996 /*FUNCTION Penta::GetHorizontalNeighboorSids {{{*/
    997 int* Penta::GetHorizontalNeighboorSids(){
    998 
    999         /*return PentaRef field*/
    1000         return &this->horizontalneighborsids[0];
    1001 
    1002984}
    1003985/*}}}*/
  • issm/trunk-jpl/src/c/classes/Elements/Penta.h

    r15425 r15433  
    4040                Matpar      *matpar;                      // 1 material parameter
    4141                Penta      **verticalneighbors;           // 2 neighbors: first one under, second one above
    42                 int          horizontalneighborsids[3];
    4342
    4443                Parameters  *parameters;                  //pointer to solution parameters
     
    116115                int    NodalValue(IssmDouble* pvalue, int index, int natureofdataenum);
    117116                IssmDouble TimeAdapt();
    118                 int*   GetHorizontalNeighboorSids(void);
    119117                void   ViscousHeatingCreateInput(void);
    120118
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r15429 r15433  
    3131        this->material = NULL;
    3232        this->matpar   = NULL;
    33         for(i=0;i<3;i++)this->horizontalneighborsids[i]=UNDEF;
    3433        this->inputs     = NULL;
    3534        this->parameters = NULL;
     
    4948                //this->parameters: we still can't point to it, it may not even exist. Configure will handle this.
    5049                this->parameters=NULL;
    51 
    52                 /*Build horizontalneighborsids list: */
    53                 _assert_(iomodel->Data(MeshElementconnectivityEnum));
    54                 //for (i=0;i<3;i++) this->horizontalneighborsids[i]=(int)iomodel->elementconnectivity[3*index+i]-1;
    5550
    5651                /*intialize inputs and results: */
     
    117112        tria->material=(Material*)tria->hmaterial->delivers();
    118113        tria->matpar=(Matpar*)tria->hmatpar->delivers();
    119 
    120         /*neighbors: */
    121         for(i=0;i<3;i++)tria->horizontalneighborsids[i]=this->horizontalneighborsids[i];
    122114
    123115        return tria;
     
    561553        else _printf_("results=NULL\n");
    562554
    563         _printf_("neighboor sids: \n");
    564         _printf_(" " << horizontalneighborsids[0] << " " << horizontalneighborsids[1] << " " << horizontalneighborsids[2] << "\n");
    565 
    566555        return;
    567556}
     
    672661        if (results) results->Echo();
    673662        else _printf_("results=NULL\n");
    674 
    675         _printf_("neighboor sids: \n");
    676         _printf_(" " << horizontalneighborsids[0] << " " << horizontalneighborsids[1] << " " << horizontalneighborsids[2] << "\n");
    677663}
    678664/*}}}*/
     
    729715        /*return TriaRef field*/
    730716        return this->element_type;
    731 
    732 }
    733 /*}}}*/
    734 /*FUNCTION Tria::GetHorizontalNeighboorSids {{{*/
    735 int* Tria::GetHorizontalNeighboorSids(){
    736 
    737         /*return TriaRef field*/
    738         return &this->horizontalneighborsids[0];
    739717
    740718}
  • issm/trunk-jpl/src/c/classes/Elements/Tria.h

    r15401 r15433  
    3737                Material    *material;                    // 1 material ice
    3838                Matpar      *matpar;                      // 1 material parameter
    39                 int          horizontalneighborsids[3];
    4039
    4140                Parameters  *parameters;                  //pointer to solution parameters
     
    115114                void   Update(int index, IoModel* iomodel,int analysis_counter,int analysis_type);
    116115                IssmDouble TimeAdapt();
    117                 int*   GetHorizontalNeighboorSids(void);
    118116
    119117                #ifdef _HAVE_RESPONSES_
  • issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateElementsVerticesAndMaterials.cpp

    r15428 r15433  
    3434        materials = new Materials();
    3535
    36         iomodel->FetchData(1,MeshElementconnectivityEnum);
    3736        #ifdef _HAVE_3D_
    3837        if(iomodel->dim==3)iomodel->FetchData(2,MeshUpperelementsEnum,MeshLowerelementsEnum);
     
    7372
    7473        /*Free data: */
    75         iomodel->DeleteData(9,MeshElementconnectivityEnum,MeshUpperelementsEnum,MeshLowerelementsEnum,
     74        iomodel->DeleteData(8,MeshUpperelementsEnum,MeshLowerelementsEnum,
    7675                                MaterialsRheologyBEnum,MaterialsRheologyNEnum,MaterialsRheologyZEnum,InversionControlParametersEnum,InversionMinParametersEnum,
    7776                                InversionMaxParametersEnum);
  • issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h

    r15432 r15433  
    169169        MeshAverageVertexConnectivityEnum,
    170170        MeshDimensionEnum,
    171         MeshElementconnectivityEnum,
    172171        MeshElementonbedEnum,
    173172        MeshElementonsurfaceEnum,
  • issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp

    r15432 r15433  
    177177                case MeshAverageVertexConnectivityEnum : return "MeshAverageVertexConnectivity";
    178178                case MeshDimensionEnum : return "MeshDimension";
    179                 case MeshElementconnectivityEnum : return "MeshElementconnectivity";
    180179                case MeshElementonbedEnum : return "MeshElementonbed";
    181180                case MeshElementonsurfaceEnum : return "MeshElementonsurface";
  • issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp

    r15432 r15433  
    180180              else if (strcmp(name,"MeshAverageVertexConnectivity")==0) return MeshAverageVertexConnectivityEnum;
    181181              else if (strcmp(name,"MeshDimension")==0) return MeshDimensionEnum;
    182               else if (strcmp(name,"MeshElementconnectivity")==0) return MeshElementconnectivityEnum;
    183182              else if (strcmp(name,"MeshElementonbed")==0) return MeshElementonbedEnum;
    184183              else if (strcmp(name,"MeshElementonsurface")==0) return MeshElementonsurfaceEnum;
     
    260259              else if (strcmp(name,"GiaLithosphereThickness")==0) return GiaLithosphereThicknessEnum;
    261260              else if (strcmp(name,"Thickness")==0) return ThicknessEnum;
     261              else if (strcmp(name,"TimesteppingStartTime")==0) return TimesteppingStartTimeEnum;
    262262         else stage=3;
    263263   }
    264264   if(stage==3){
    265               if (strcmp(name,"TimesteppingStartTime")==0) return TimesteppingStartTimeEnum;
    266               else if (strcmp(name,"TimesteppingFinalTime")==0) return TimesteppingFinalTimeEnum;
     265              if (strcmp(name,"TimesteppingFinalTime")==0) return TimesteppingFinalTimeEnum;
    267266              else if (strcmp(name,"TimesteppingCflCoefficient")==0) return TimesteppingCflCoefficientEnum;
    268267              else if (strcmp(name,"TimesteppingTimeAdapt")==0) return TimesteppingTimeAdaptEnum;
     
    383382              else if (strcmp(name,"RiftfrontType")==0) return RiftfrontTypeEnum;
    384383              else if (strcmp(name,"Segment")==0) return SegmentEnum;
     384              else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
    385385         else stage=4;
    386386   }
    387387   if(stage==4){
    388               if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
    389               else if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
     388              if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
    390389              else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
    391390              else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
     
    506505              else if (strcmp(name,"DoubleElementResult")==0) return DoubleElementResultEnum;
    507506              else if (strcmp(name,"DoubleExternalResult")==0) return DoubleExternalResultEnum;
     507              else if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
    508508         else stage=5;
    509509   }
    510510   if(stage==5){
    511               if (strcmp(name,"DoubleMatExternalResult")==0) return DoubleMatExternalResultEnum;
    512               else if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
     511              if (strcmp(name,"IntExternalResult")==0) return IntExternalResultEnum;
    513512              else if (strcmp(name,"J")==0) return JEnum;
    514513              else if (strcmp(name,"Patch")==0) return PatchEnum;
  • issm/trunk-jpl/src/m/classes/mesh.m

    r15432 r15433  
    109109                                md = checkfield(md,'mesh.average_vertex_connectivity','>=',24,'message','''mesh.average_vertex_connectivity'' should be at least 24 in 3d');
    110110                        end
    111                         md = checkfield(md,'mesh.elementconnectivity','size',[md.mesh.numberofelements 3],'NaN',1);
    112111
    113112                        %Solution specific checks
     
    196195                        WriteData(fid,'object',obj,'fieldname','lowerelements','format','DoubleMat','mattype',2);
    197196                        WriteData(fid,'object',obj,'fieldname','upperelements','format','DoubleMat','mattype',2);
    198                         WriteData(fid,'object',obj,'fieldname','elementconnectivity','format','DoubleMat','mattype',3);
    199197                        WriteData(fid,'object',obj,'fieldname','average_vertex_connectivity','format','Integer');
    200198                        WriteData(fid,'object',obj,'fieldname','elements2d','format','DoubleMat','mattype',3);
  • issm/trunk-jpl/src/m/classes/mesh.py

    r15432 r15433  
    147147                else:
    148148                        md = checkfield(md,'mesh.average_vertex_connectivity','>=',24,'message',"'mesh.average_vertex_connectivity' should be at least 24 in 3d")
    149                 md = checkfield(md,'mesh.elementconnectivity','size',[md.mesh.numberofelements,3],'NaN',1)
    150149
    151150                #Solution specific checks
     
    179178                WriteData(fid,'object',self,'fieldname','lowerelements','format','DoubleMat','mattype',2)
    180179                WriteData(fid,'object',self,'fieldname','upperelements','format','DoubleMat','mattype',2)
    181                 WriteData(fid,'object',self,'fieldname','elementconnectivity','format','DoubleMat','mattype',3)
    182180                WriteData(fid,'object',self,'fieldname','average_vertex_connectivity','format','Integer')
    183181                WriteData(fid,'object',self,'fieldname','elements2d','format','DoubleMat','mattype',3)
  • issm/trunk-jpl/src/m/enum/EnumDefinitions.py

    r15432 r15433  
    22492249        return StringToEnum('MeshDimension')[0]
    22502250
    2251 def MeshElementconnectivityEnum():
    2252         """
    2253         MESHELEMENTCONNECTIVITYENUM - Enum of MeshElementconnectivity
    2254 
    2255         WARNING: DO NOT MODIFY THIS FILE
    2256                                 this file has been automatically generated by src/c/shared/Enum/Synchronize.sh
    2257                                 Please read src/c/shared/Enum/README for more information
    2258 
    2259            Usage:
    2260               macro=MeshElementconnectivityEnum()
    2261         """
    2262 
    2263         return StringToEnum('MeshElementconnectivity')[0]
    2264 
    22652251def MeshElementonbedEnum():
    22662252        """
     
    78617847        """
    78627848
    7863         return 560
    7864 
     7849        return 559
     7850
  • issm/trunk-jpl/src/m/enum/MaximumNumberOfEnums.m

    r15432 r15433  
    99%      macro=MaximumNumberOfEnums()
    1010
    11 macro=560;
     11macro=559;
Note: See TracChangeset for help on using the changeset viewer.