Changeset 11192
- Timestamp:
- 01/24/12 15:19:29 (13 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 1 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/EnumDefinitions/EnumDefinitions.h
r10975 r11192 126 126 MiscellaneousNameEnum, //FIXME: only used by qmu, should not be marshalled (already in queueing script) 127 127 PrognosticHydrostaticAdjustmentEnum, 128 PrognosticMinThicknessEnum, 128 129 PrognosticPenaltyFactorEnum, 129 130 PrognosticSpcthicknessEnum, -
issm/trunk-jpl/src/c/modules/EnumToStringx/EnumToStringx.cpp
r10975 r11192 130 130 case MiscellaneousNameEnum : return "MiscellaneousName"; 131 131 case PrognosticHydrostaticAdjustmentEnum : return "PrognosticHydrostaticAdjustment"; 132 case PrognosticMinThicknessEnum : return "PrognosticMinThickness"; 132 133 case PrognosticPenaltyFactorEnum : return "PrognosticPenaltyFactor"; 133 134 case PrognosticSpcthicknessEnum : return "PrognosticSpcthickness"; -
issm/trunk-jpl/src/c/modules/ModelProcessorx/CreateParameters.cpp
r10975 r11192 51 51 parameters->AddObject(iomodel->CopyConstantObject(PrognosticStabilizationEnum)); 52 52 parameters->AddObject(iomodel->CopyConstantObject(DiagnosticPenaltyFactorEnum)); 53 parameters->AddObject(iomodel->CopyConstantObject(PrognosticMinThicknessEnum)); 53 54 parameters->AddObject(iomodel->CopyConstantObject(PrognosticPenaltyFactorEnum)); 54 55 parameters->AddObject(iomodel->CopyConstantObject(ThermalPenaltyFactorEnum)); -
issm/trunk-jpl/src/c/modules/StringToEnumx/StringToEnumx.cpp
r10975 r11192 128 128 else if (strcmp(name,"MiscellaneousName")==0) return MiscellaneousNameEnum; 129 129 else if (strcmp(name,"PrognosticHydrostaticAdjustment")==0) return PrognosticHydrostaticAdjustmentEnum; 130 else if (strcmp(name,"PrognosticMinThickness")==0) return PrognosticMinThicknessEnum; 130 131 else if (strcmp(name,"PrognosticPenaltyFactor")==0) return PrognosticPenaltyFactorEnum; 131 132 else if (strcmp(name,"PrognosticSpcthickness")==0) return PrognosticSpcthicknessEnum; -
issm/trunk-jpl/src/c/objects/Elements/Penta.cpp
r11189 r11192 1785 1785 int i,hydroadjustment; 1786 1786 int* doflist = NULL; 1787 double rho_ice,rho_water ;1787 double rho_ice,rho_water,minthickness; 1788 1788 double newthickness[numdof]; 1789 1789 double newbed[numdof]; … … 1801 1801 1802 1802 /*Use the dof list to index into the solution vector and extrude it */ 1803 this->parameters->FindParam(&minthickness,PrognosticMinThicknessEnum); 1803 1804 for(i=0;i<numdof2d;i++){ 1804 1805 newthickness[i]=solution[doflist[i]]; 1805 1806 if(isnan(newthickness[i])) _error_("NaN found in solution vector"); 1806 1807 /*Constrain thickness to be at least 1m*/ 1807 if(newthickness[i]< 1) newthickness[i]=1;1808 if(newthickness[i]<minthickness) newthickness[i]=minthickness; 1808 1809 newthickness[i+numdof2d]=newthickness[i]; 1809 1810 } -
issm/trunk-jpl/src/c/objects/Elements/Tria.cpp
r11189 r11192 1603 1603 int i,hydroadjustment; 1604 1604 int* doflist=NULL; 1605 double rho_ice,rho_water ;1605 double rho_ice,rho_water,minthickness; 1606 1606 double newthickness[numdof]; 1607 1607 double newbed[numdof]; … … 1615 1615 1616 1616 /*Use the dof list to index into the solution vector: */ 1617 this->parameters->FindParam(&minthickness,PrognosticMinThicknessEnum); 1617 1618 for(i=0;i<numdof;i++){ 1618 1619 newthickness[i]=solution[doflist[i]]; 1619 1620 if(isnan(newthickness[i])) _error_("NaN found in solution vector"); 1620 1621 /*Constrain thickness to be at least 1m*/ 1621 if(newthickness[i]< 1) newthickness[i]=1;1622 if(newthickness[i]<minthickness) newthickness[i]=minthickness; 1622 1623 } 1623 1624 -
issm/trunk-jpl/src/m/classes/prognostic.m
r10999 r11192 7 7 properties (SetAccess=public) 8 8 spcthickness = NaN; 9 min_thickness = 0; 9 10 hydrostatic_adjustment = 0; 10 11 stabilization = 0; … … 36 37 obj.penalty_factor=3; 37 38 39 %Minimum ice thickness that can be used 40 obj.min_thickness=1; 41 38 42 %Hydrostatic adjustment 39 43 obj.hydrostatic_adjustment='Absolute'; … … 47 51 checkfield(md,'prognostic.hydrostatic_adjustment','values',{'Absolute' 'Incremental'}); 48 52 checkfield(md,'prognostic.stabilization','values',[0 1 3]); 53 checkfield(md,'prognostic.min_thickness','>',0); 49 54 50 55 end % }}} … … 52 57 disp(sprintf(' Prognostic solution parameters:')); 53 58 fielddisplay(obj,'spcthickness','thickness constraints (NaN means no constraint)'); 59 fielddisplay(obj,'min_thickness','minimum ice thickness allowed'); 54 60 fielddisplay(obj,'hydrostatic_adjustment','adjustment of ice shelves surface and bed elevations: ''Incremental'' or ''Absolute'' '); 55 61 fielddisplay(obj,'stabilization','0->no, 1->artificial_diffusivity, 3->discontinuous Galerkin'); … … 62 68 function marshall(obj,fid) % {{{ 63 69 WriteData(fid,'object',obj,'fieldname','spcthickness','format','DoubleMat','mattype',1); 70 WriteData(fid,'object',obj,'fieldname','min_thickness','format','Double'); 64 71 WriteData(fid,'data',StringToEnum(obj.hydrostatic_adjustment),'format','Integer','enum',PrognosticHydrostaticAdjustmentEnum); 65 72 WriteData(fid,'object',obj,'fieldname','stabilization','format','Integer');
Note:
See TracChangeset
for help on using the changeset viewer.