- Timestamp:
- 08/11/20 19:43:31 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/StressbalanceSIAAnalysis.cpp
r25317 r25379 107 107 return 2; 108 108 }/*}}}*/ 109 void StressbalanceSIAAnalysis::UpdateElements(Elements* elements,Inputs 2* inputs2,IoModel* iomodel,int analysis_counter,int analysis_type){/*{{{*/109 void StressbalanceSIAAnalysis::UpdateElements(Elements* elements,Inputs* inputs,IoModel* iomodel,int analysis_counter,int analysis_type){/*{{{*/ 110 110 111 111 /*Fetch data needed: */ … … 127 127 if(iomodel->my_elements[i]){ 128 128 Element* element=(Element*)elements->GetObjectByOffset(counter); 129 element->Update(inputs 2,i,iomodel,analysis_counter,analysis_type,P1Enum);129 element->Update(inputs,i,iomodel,analysis_counter,analysis_type,P1Enum); 130 130 /*Need to know the type of approximation for this element*/ 131 131 if(iomodel->Data("md.flowequation.element_equation")){ 132 inputs 2->SetInput(ApproximationEnum,counter,IoCodeToEnumElementEquation(reCast<int>(iomodel->Data("md.flowequation.element_equation")[i])));132 inputs->SetInput(ApproximationEnum,counter,IoCodeToEnumElementEquation(reCast<int>(iomodel->Data("md.flowequation.element_equation")[i]))); 133 133 } 134 134 counter++; … … 142 142 switch(frictionlaw){ 143 143 case 1: 144 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.coefficient",FrictionCoefficientEnum);145 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.p",FrictionPEnum);146 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.q",FrictionQEnum);144 iomodel->FetchDataToInput(inputs,elements,"md.friction.coefficient",FrictionCoefficientEnum); 145 iomodel->FetchDataToInput(inputs,elements,"md.friction.p",FrictionPEnum); 146 iomodel->FetchDataToInput(inputs,elements,"md.friction.q",FrictionQEnum); 147 147 break; 148 148 case 2: 149 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.C",FrictionCEnum);150 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.m",FrictionMEnum);149 iomodel->FetchDataToInput(inputs,elements,"md.friction.C",FrictionCEnum); 150 iomodel->FetchDataToInput(inputs,elements,"md.friction.m",FrictionMEnum); 151 151 break; 152 152 case 6: 153 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.C",FrictionCEnum);154 iomodel->FetchDataToInput(inputs 2,elements,"md.friction.m",FrictionMEnum);155 iomodel->FetchDataToInput(inputs 2,elements,"md.initialization.pressure",PressureEnum);156 iomodel->FetchDataToInput(inputs 2,elements,"md.initialization.temperature",TemperatureEnum);153 iomodel->FetchDataToInput(inputs,elements,"md.friction.C",FrictionCEnum); 154 iomodel->FetchDataToInput(inputs,elements,"md.friction.m",FrictionMEnum); 155 iomodel->FetchDataToInput(inputs,elements,"md.initialization.pressure",PressureEnum); 156 iomodel->FetchDataToInput(inputs,elements,"md.initialization.temperature",TemperatureEnum); 157 157 break; 158 158 default: … … 160 160 } 161 161 162 iomodel->FetchDataToInput(inputs 2,elements,"md.geometry.thickness",ThicknessEnum);163 iomodel->FetchDataToInput(inputs 2,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum);162 iomodel->FetchDataToInput(inputs,elements,"md.geometry.thickness",ThicknessEnum); 163 iomodel->FetchDataToInput(inputs,elements,"md.mask.ocean_levelset",MaskOceanLevelsetEnum); 164 164 if(ismovingfront){ 165 165 if(iomodel->domaintype!=Domain2DhorizontalEnum) 166 iomodel->FetchDataToInput(inputs 2,elements,"md.mesh.vertexonbase",MeshVertexonbaseEnum); // required for updating active nodes166 iomodel->FetchDataToInput(inputs,elements,"md.mesh.vertexonbase",MeshVertexonbaseEnum); // required for updating active nodes 167 167 } 168 168 … … 326 326 IssmDouble gravity = element->FindParam(ConstantsGEnum); 327 327 IssmDouble B,n; 328 Input 2* B_input = element->GetInput2(MaterialsRheologyBbarEnum);_assert_(B_input);329 Input 2* n_input = element->GetInput2(MaterialsRheologyNEnum); _assert_(n_input);330 Input 2* slopex_input = element->GetInput2(SurfaceSlopeXEnum); _assert_(slopex_input);331 Input 2* slopey_input = element->GetInput2(SurfaceSlopeYEnum); _assert_(slopey_input);332 Input 2* thickness_input = element->GetInput2(ThicknessEnum); _assert_(thickness_input);333 Input 2* surface_input = element->GetInput2(SurfaceEnum); _assert_(surface_input);334 Input 2* drag_input = NULL;328 Input* B_input = element->GetInput(MaterialsRheologyBbarEnum);_assert_(B_input); 329 Input* n_input = element->GetInput(MaterialsRheologyNEnum); _assert_(n_input); 330 Input* slopex_input = element->GetInput(SurfaceSlopeXEnum); _assert_(slopex_input); 331 Input* slopey_input = element->GetInput(SurfaceSlopeYEnum); _assert_(slopey_input); 332 Input* thickness_input = element->GetInput(ThicknessEnum); _assert_(thickness_input); 333 Input* surface_input = element->GetInput(SurfaceEnum); _assert_(surface_input); 334 Input* drag_input = NULL; 335 335 if(frictionlaw!=5 && frictionlaw!=1){ 336 drag_input = element->GetInput 2(FrictionCoefficientEnum); _assert_(drag_input);336 drag_input = element->GetInput(FrictionCoefficientEnum); _assert_(drag_input); 337 337 } 338 338 … … 416 416 IssmDouble gravity = element->FindParam(ConstantsGEnum); 417 417 IssmDouble B,n; 418 Input 2* B_input = element->GetInput2(MaterialsRheologyBEnum); _assert_(B_input);419 Input 2* n_input = element->GetInput2(MaterialsRheologyNEnum); _assert_(n_input);420 Input 2* surface_input = element->GetInput2(SurfaceEnum); _assert_(surface_input);421 Input 2* slopex_input = element->GetInput2(SurfaceSlopeXEnum); _assert_(slopex_input);422 Input 2* slopey_input = element->GetInput2(SurfaceSlopeYEnum); _assert_(slopey_input);423 Input 2* thickness_input = element->GetInput2(ThicknessEnum); _assert_(thickness_input);424 Input 2* drag_input = NULL;418 Input* B_input = element->GetInput(MaterialsRheologyBEnum); _assert_(B_input); 419 Input* n_input = element->GetInput(MaterialsRheologyNEnum); _assert_(n_input); 420 Input* surface_input = element->GetInput(SurfaceEnum); _assert_(surface_input); 421 Input* slopex_input = element->GetInput(SurfaceSlopeXEnum); _assert_(slopex_input); 422 Input* slopey_input = element->GetInput(SurfaceSlopeYEnum); _assert_(slopey_input); 423 Input* thickness_input = element->GetInput(ThicknessEnum); _assert_(thickness_input); 424 Input* drag_input = NULL; 425 425 Friction* friction = NULL; 426 426 if(frictionlaw!=5 && frictionlaw!=1){ 427 drag_input = element->GetInput 2(FrictionCoefficientEnum); _assert_(drag_input);427 drag_input = element->GetInput(FrictionCoefficientEnum); _assert_(drag_input); 428 428 } 429 429 else if(frictionlaw==5){ … … 535 535 /*Get dof list and inputs */ 536 536 element->GetDofList(&doflist,NoneApproximationEnum,GsetEnum); 537 Input 2* vx_input=element->GetInput2(VxEnum); _assert_(vx_input);538 Input 2* vy_input=element->GetInput2(VyEnum); _assert_(vy_input);537 Input* vx_input=element->GetInput(VxEnum); _assert_(vx_input); 538 Input* vy_input=element->GetInput(VyEnum); _assert_(vy_input); 539 539 540 540 /*Ok, we have the velocities in inputs, fill in solution */ … … 622 622 623 623 /*Add vx and vy as inputs to the tria element: */ 624 element->AddInput 2(VxEnum,vx,P1Enum);625 element->AddInput 2(VyEnum,vy,P1Enum);626 element->AddInput 2(VelEnum,vel,P1Enum);627 element->AddInput 2(PressureEnum,pressure,P1Enum);624 element->AddInput(VxEnum,vx,P1Enum); 625 element->AddInput(VyEnum,vy,P1Enum); 626 element->AddInput(VelEnum,vel,P1Enum); 627 element->AddInput(PressureEnum,pressure,P1Enum); 628 628 629 629 /*Free ressources:*/
Note:
See TracChangeset
for help on using the changeset viewer.