Changeset 21518
- Timestamp:
- 02/03/17 16:05:09 (8 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/classes/Elements/Element.cpp
r21513 r21518 1162 1162 int numnodes = this->GetNumberOfNodes(); 1163 1163 int* doflist = NULL; 1164 IssmDouble value; 1164 1165 IssmDouble* values = NULL; 1166 Input* input = NULL; 1165 1167 1166 1168 switch(type){ 1167 case VertexPIdEnum: 1168 doflist = xNew<int>(numvertices); 1169 values = xNew<IssmDouble>(numvertices); 1170 /*Fill in values*/ 1171 this->GetVertexPidList(doflist); 1172 this->GetInputListOnVertices(values,input_enum); 1173 vector->SetValues(numvertices,doflist,values,INS_VAL); 1174 break; 1175 case VertexSIdEnum: 1176 doflist = xNew<int>(numvertices); 1177 values = xNew<IssmDouble>(numvertices); 1178 /*Fill in values*/ 1179 this->GetVerticesSidList(doflist); 1180 this->GetInputListOnVertices(values,input_enum); 1181 vector->SetValues(numvertices,doflist,values,INS_VAL); 1182 break; 1183 case NodesEnum: 1184 doflist = xNew<int>(numnodes); 1185 values = xNew<IssmDouble>(numnodes); 1186 /*Fill in values*/ 1187 this->GetInputListOnNodes(values,input_enum); 1188 this->GetDofList(&doflist,NoneApproximationEnum,GsetEnum); 1189 vector->SetValues(numnodes,doflist,values,INS_VAL); 1190 break; 1191 case NodeSIdEnum: 1192 doflist = xNew<int>(numnodes); 1193 values = xNew<IssmDouble>(numnodes); 1194 /*Fill in values*/ 1195 this->GetNodesSidList(doflist); 1196 this->GetInputListOnNodes(values,input_enum); 1197 vector->SetValues(numnodes,doflist,values,INS_VAL); 1198 break; 1199 default: 1200 _error_("type " << type << " (" << EnumToStringx(type) << ") not implemented yet"); 1201 } 1202 1169 case ElementSIdEnum: 1170 input=inputs->GetInput(input_enum); _assert_(input); 1171 input->GetInputAverage(&value); 1172 vector->SetValue(this->sid,value,INS_VAL); 1173 break; 1174 case VertexPIdEnum: 1175 doflist = xNew<int>(numvertices); 1176 values = xNew<IssmDouble>(numvertices); 1177 /*Fill in values*/ 1178 this->GetVertexPidList(doflist); 1179 this->GetInputListOnVertices(values,input_enum); 1180 vector->SetValues(numvertices,doflist,values,INS_VAL); 1181 break; 1182 case VertexSIdEnum: 1183 doflist = xNew<int>(numvertices); 1184 values = xNew<IssmDouble>(numvertices); 1185 /*Fill in values*/ 1186 this->GetVerticesSidList(doflist); 1187 this->GetInputListOnVertices(values,input_enum); 1188 vector->SetValues(numvertices,doflist,values,INS_VAL); 1189 break; 1190 case NodesEnum: 1191 doflist = xNew<int>(numnodes); 1192 values = xNew<IssmDouble>(numnodes); 1193 /*Fill in values*/ 1194 this->GetInputListOnNodes(values,input_enum); 1195 this->GetDofList(&doflist,NoneApproximationEnum,GsetEnum); 1196 vector->SetValues(numnodes,doflist,values,INS_VAL); 1197 break; 1198 case NodeSIdEnum: 1199 doflist = xNew<int>(numnodes); 1200 values = xNew<IssmDouble>(numnodes); 1201 /*Fill in values*/ 1202 this->GetNodesSidList(doflist); 1203 this->GetInputListOnNodes(values,input_enum); 1204 vector->SetValues(numnodes,doflist,values,INS_VAL); 1205 break; 1206 default: 1207 _error_("type " << type << " (" << EnumToStringx(type) << ") not implemented yet"); 1208 } 1209 1203 1210 /*Clean up*/ 1204 1211 xDelete<int>(doflist); -
issm/trunk-jpl/src/c/classes/FemModel.cpp
r21517 r21518 15 15 #include "./modules/modules.h" 16 16 #include "../shared/Enum/Enum.h" 17 18 17 #include "../analyses/analyses.h" 19 18 … … 3202 3201 IssmDouble* P0inputsold = xNew<IssmDouble>(numelementsold*numP0inputs); 3203 3202 IssmDouble* P0inputsnew = NULL; 3203 IssmDouble* vector = NULL; 3204 3204 3205 3205 for(int i=0;i<numP0inputs;i++){ 3206 3206 printf("Dealing with %s (type: %s)\n",EnumToStringx(P0input_enums[i]),EnumToStringx(P0input_interp[i])); 3207 } 3207 GetVectorFromInputsx(&vector,this,P0input_enums[i],ElementSIdEnum); 3208 3209 /*Copy vector in matrix*/ 3210 xMemCpy<int>(&P0inputsold[i*numelementsold],vector,numelementsold); 3211 xDelete<IssmDouble>(vector); 3212 } 3213 printf("Printing array to make sure it looks alright\n"); 3214 printarray(P0inputsold,numelementsold,numP0inputs); 3208 3215 3209 3216 _error_("stop"); -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r21510 r21518 853 853 MassconaxpbyEnum, 854 854 NodeSIdEnum, 855 ElementSIdEnum, 855 856 VectorParamEnum, 856 857 RiftfrontEnum, -
issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
r21510 r21518 827 827 case MassconaxpbyEnum : return "Massconaxpby"; 828 828 case NodeSIdEnum : return "NodeSId"; 829 case ElementSIdEnum : return "ElementSId"; 829 830 case VectorParamEnum : return "VectorParam"; 830 831 case RiftfrontEnum : return "Riftfront"; -
issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
r21510 r21518 845 845 else if (strcmp(name,"Massconaxpby")==0) return MassconaxpbyEnum; 846 846 else if (strcmp(name,"NodeSId")==0) return NodeSIdEnum; 847 else if (strcmp(name,"ElementSId")==0) return ElementSIdEnum; 847 848 else if (strcmp(name,"VectorParam")==0) return VectorParamEnum; 848 849 else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum; … … 874 875 else if (strcmp(name,"DefaultAnalysis")==0) return DefaultAnalysisEnum; 875 876 else if (strcmp(name,"BalancethicknessAnalysis")==0) return BalancethicknessAnalysisEnum; 876 else if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum;877 877 else stage=8; 878 878 } 879 879 if(stage==8){ 880 if (strcmp(name,"Balancethickness2Analysis")==0) return Balancethickness2AnalysisEnum; 880 if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum; 881 else if (strcmp(name,"Balancethickness2Analysis")==0) return Balancethickness2AnalysisEnum; 881 882 else if (strcmp(name,"Balancethickness2Solution")==0) return Balancethickness2SolutionEnum; 882 883 else if (strcmp(name,"BalancethicknessSoftAnalysis")==0) return BalancethicknessSoftAnalysisEnum; … … 997 998 else if (strcmp(name,"Nodes")==0) return NodesEnum; 998 999 else if (strcmp(name,"Contours")==0) return ContoursEnum; 999 else if (strcmp(name,"Parameters")==0) return ParametersEnum;1000 1000 else stage=9; 1001 1001 } 1002 1002 if(stage==9){ 1003 if (strcmp(name,"Vertices")==0) return VerticesEnum; 1003 if (strcmp(name,"Parameters")==0) return ParametersEnum; 1004 else if (strcmp(name,"Vertices")==0) return VerticesEnum; 1004 1005 else if (strcmp(name,"Results")==0) return ResultsEnum; 1005 1006 else if (strcmp(name,"MaximumNumberOfDefinitions")==0) return MaximumNumberOfDefinitionsEnum;
Note:
See TracChangeset
for help on using the changeset viewer.