Changeset 16219
- Timestamp:
- 09/20/13 16:10:05 (12 years ago)
- Location:
- issm/trunk-jpl/src/c
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified issm/trunk-jpl/src/c/analyses/enthalpy_core.cpp ¶
r15849 r16219 23 23 24 24 /*transfer enthalpy to enthalpy picard for the next step: */ 25 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,EnthalpyEnum,EnthalpyPicardEnum);25 InputDuplicatex(femmodel,EnthalpyEnum,EnthalpyPicardEnum); 26 26 27 27 if(save_results){ -
TabularUnified issm/trunk-jpl/src/c/analyses/hydrology_core.cpp ¶
r15849 r16219 64 64 /*transfer water column thickness to old water column thickness: */ 65 65 66 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,WatercolumnEnum,WaterColumnOldEnum);66 InputDuplicatex(femmodel,WatercolumnEnum,WaterColumnOldEnum); 67 67 68 68 if(save_results && ((i+1)%output_frequency==0 || (i+1)==nsteps)){ … … 79 79 80 80 else if (hydrology_model==HydrologydcEnum){ 81 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,SedimentHeadEnum,SedimentHeadOldEnum);81 InputDuplicatex(femmodel,SedimentHeadEnum,SedimentHeadOldEnum); 82 82 femmodel->parameters->FindParam(&isefficientlayer,HydrologydcIsefficientlayerEnum); 83 83 if (isefficientlayer){ 84 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,EplHeadEnum,EplHeadOldEnum);84 InputDuplicatex(femmodel,EplHeadEnum,EplHeadOldEnum); 85 85 } 86 86 -
TabularUnified issm/trunk-jpl/src/c/analyses/masstransport_core.cpp ¶
r16215 r16219 36 36 /*for qmu analysis, reinitialize velocity so that fake sensitivities do not show up as a result of a different restart of the convergence at each trial.*/ 37 37 if(dakota_analysis && solution_type==MasstransportSolutionEnum){ 38 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuSurfaceEnum,SurfaceEnum);39 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuThicknessEnum,ThicknessEnum);40 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuBedEnum,BedEnum);38 InputDuplicatex(femmodel,QmuSurfaceEnum,SurfaceEnum); 39 InputDuplicatex(femmodel,QmuThicknessEnum,ThicknessEnum); 40 InputDuplicatex(femmodel,QmuBedEnum,BedEnum); 41 41 } 42 42 -
TabularUnified issm/trunk-jpl/src/c/analyses/stressbalance_core.cpp ¶
r16218 r16219 39 39 /*for qmu analysis, reinitialize velocity so that fake sensitivities do not show up as a result of a different restart of the convergence at each trial.*/ 40 40 if(dakota_analysis && solution_type==StressbalanceSolutionEnum){ 41 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVxEnum,VxEnum);42 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVyEnum,VyEnum);43 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVzEnum,VzEnum);44 if(isFS) InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuPressureEnum,PressureEnum);41 InputDuplicatex(femmodel,QmuVxEnum,VxEnum); 42 InputDuplicatex(femmodel,QmuVyEnum,VyEnum); 43 InputDuplicatex(femmodel,QmuVzEnum,VzEnum); 44 if(isFS) InputDuplicatex(femmodel,QmuPressureEnum,PressureEnum); 45 45 } 46 46 -
TabularUnified issm/trunk-jpl/src/c/analyses/thermal_core.cpp ¶
r16215 r16219 23 23 24 24 if(dakota_analysis && solution_type!=TransientSolutionEnum){ 25 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVxMeshEnum,VxMeshEnum);26 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVyMeshEnum,VyMeshEnum);27 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVzMeshEnum,VzMeshEnum);28 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuTemperatureEnum,TemperatureEnum);29 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMeltingEnum,BasalforcingsMeltingRateEnum);30 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMaterialsRheologyBEnum,MaterialsRheologyBEnum);25 InputDuplicatex(femmodel,QmuVxMeshEnum,VxMeshEnum); 26 InputDuplicatex(femmodel,QmuVyMeshEnum,VyMeshEnum); 27 InputDuplicatex(femmodel,QmuVzMeshEnum,VzMeshEnum); 28 InputDuplicatex(femmodel,QmuTemperatureEnum,TemperatureEnum); 29 InputDuplicatex(femmodel,QmuMeltingEnum,BasalforcingsMeltingRateEnum); 30 InputDuplicatex(femmodel,QmuMaterialsRheologyBEnum,MaterialsRheologyBEnum); 31 31 femmodel->SetCurrentConfiguration(ThermalAnalysisEnum); 32 32 ResetConstraintsx(femmodel); -
TabularUnified issm/trunk-jpl/src/c/analyses/transient_core.cpp ¶
r16218 r16219 61 61 if(dakota_analysis){ 62 62 if(isstressbalance){ 63 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVxEnum,VxEnum);64 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVyEnum,VyEnum);63 InputDuplicatex(femmodel,QmuVxEnum,VxEnum); 64 InputDuplicatex(femmodel,QmuVyEnum,VyEnum); 65 65 if(dim==3){ 66 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVzEnum,VzEnum);67 if(isFS)InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuPressureEnum,PressureEnum);66 InputDuplicatex(femmodel,QmuVzEnum,VzEnum); 67 if(isFS)InputDuplicatex(femmodel,QmuPressureEnum,PressureEnum); 68 68 } 69 69 } 70 70 if(ismasstransport || isgroundingline){ 71 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuThicknessEnum,ThicknessEnum);72 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuSurfaceEnum,SurfaceEnum);73 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuBedEnum,BedEnum);74 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMaskIceLevelsetEnum,MaskIceLevelsetEnum);71 InputDuplicatex(femmodel,QmuThicknessEnum,ThicknessEnum); 72 InputDuplicatex(femmodel,QmuSurfaceEnum,SurfaceEnum); 73 InputDuplicatex(femmodel,QmuBedEnum,BedEnum); 74 InputDuplicatex(femmodel,QmuMaskIceLevelsetEnum,MaskIceLevelsetEnum); 75 75 } 76 if(isgroundingline) InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMaskGroundediceLevelsetEnum,MaskGroundediceLevelsetEnum);77 if(dim==2)InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMaterialsRheologyBEnum,MaterialsRheologyBbarEnum);76 if(isgroundingline) InputDuplicatex(femmodel,QmuMaskGroundediceLevelsetEnum,MaskGroundediceLevelsetEnum); 77 if(dim==2)InputDuplicatex(femmodel,QmuMaterialsRheologyBEnum,MaterialsRheologyBbarEnum); 78 78 if(isthermal && dim==3){ 79 79 //Update Vertex Position after updating Thickness and Bed 80 80 femmodel->SetCurrentConfiguration(MasstransportAnalysisEnum); 81 81 femmodel->UpdateVertexPositionsx(); 82 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVxMeshEnum,VxMeshEnum);83 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVyMeshEnum,VyMeshEnum);84 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuVzMeshEnum,VzMeshEnum);85 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuTemperatureEnum,TemperatureEnum);86 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMeltingEnum,BasalforcingsMeltingRateEnum);87 InputDuplicatex(femmodel ->elements,femmodel->nodes,femmodel->vertices,femmodel->loads,femmodel->materials,femmodel->parameters,QmuMaterialsRheologyBEnum,MaterialsRheologyBEnum);82 InputDuplicatex(femmodel,QmuVxMeshEnum,VxMeshEnum); 83 InputDuplicatex(femmodel,QmuVyMeshEnum,VyMeshEnum); 84 InputDuplicatex(femmodel,QmuVzMeshEnum,VzMeshEnum); 85 InputDuplicatex(femmodel,QmuTemperatureEnum,TemperatureEnum); 86 InputDuplicatex(femmodel,QmuMeltingEnum,BasalforcingsMeltingRateEnum); 87 InputDuplicatex(femmodel,QmuMaterialsRheologyBEnum,MaterialsRheologyBEnum); 88 88 //Reset Thermal Constraints 89 89 femmodel->SetCurrentConfiguration(ThermalAnalysisEnum); -
TabularUnified issm/trunk-jpl/src/c/classes/Elements/Tria.cpp ¶
r16218 r16219 2426 2426 2427 2427 /*Intermediaries*/ 2428 int i; 2429 IssmDouble nodeinputs[3]; 2430 IssmDouble yts; 2431 int progstabilization,balancestabilization; 2432 int fe_ssa; 2433 bool dakota_analysis; 2434 int numnodes; 2435 int* tria_node_ids = NULL; 2428 int numnodes; 2429 int* tria_node_ids = NULL; 2436 2430 2437 2431 /*Checks if debuging*/ 2438 2432 _assert_(iomodel->elements); 2439 2440 /*Fetch parameters: */2441 iomodel->Constant(&yts,ConstantsYtsEnum);2442 iomodel->Constant(&progstabilization,MasstransportStabilizationEnum);2443 iomodel->Constant(&balancestabilization,BalancethicknessStabilizationEnum);2444 iomodel->Constant(&fe_ssa,FlowequationFeSSAEnum);2445 iomodel->Constant(&dakota_analysis,QmuIsdakotaEnum);2446 2433 2447 2434 /*Recover element type*/ … … 2492 2479 /*Fill with IoModel*/ 2493 2480 this->InputUpdateFromIoModel(index,iomodel); 2494 2495 2481 } 2496 2482 /*}}}*/ -
TabularUnified issm/trunk-jpl/src/c/modules/InputDuplicatex/InputDuplicatex.cpp ¶
r15375 r16219 8 8 #include "../../toolkits/toolkits.h" 9 9 10 void InputDuplicatex( Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int original_enum, int new_enum){10 void InputDuplicatex(FemModel* femmodel,int original_enum, int new_enum){ 11 11 12 12 /*Go through elemnets, and ask to reinitialie the input: */ 13 int i; 14 for(i=0;i<elements->Size();i++){ 15 Element* element=dynamic_cast<Element*>(elements->GetObjectByOffset(i)); 13 for(int i=0;i<femmodel->elements->Size();i++){ 14 Element* element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i)); 16 15 element->InputDuplicate(original_enum,new_enum); 17 16 } 18 for(i =0;i<materials->Size();i++){19 Material* material=(Material*) materials->GetObjectByOffset(i);17 for(int i=0;i<femmodel->materials->Size();i++){ 18 Material* material=(Material*)femmodel->materials->GetObjectByOffset(i); 20 19 material->InputDuplicate(original_enum,new_enum); 21 20 } -
TabularUnified issm/trunk-jpl/src/c/modules/InputDuplicatex/InputDuplicatex.h ¶
r14996 r16219 9 9 10 10 /* local prototypes: */ 11 void InputDuplicatex( Elements* elements,Nodes* nodes,Vertices* vertices,Loads* loads,Materials* materials,Parameters* parameters,int reinitialized_enum, int original_enum);11 void InputDuplicatex(FemModel* femmodel,int reinitialized_enum, int original_enum); 12 12 13 13 #endif /* _INPUTDUPLICATEX_H */
Note:
See TracChangeset
for help on using the changeset viewer.