Changeset 27009
- Timestamp:
- 05/18/22 09:46:29 (3 years ago)
- Location:
- issm/trunk-jpl/src
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/c/analyses/LevelsetAnalysis.cpp
r27006 r27009 146 146 case FrontalForcingsDefaultEnum: 147 147 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.meltingrate",CalvingMeltingrateEnum); 148 iomodel->FetchDataToInput(inputs,elements,"md.frontalforcings.ablationrate",CalvingAblationrateEnum); 148 149 break; 149 150 case FrontalForcingsRignotEnum: -
issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
r26998 r27009 824 824 IssmDouble B,sigma_max,sigma_max_floating,sigma_max_grounded,n; 825 825 IssmDouble epse_2,groundedice,bed,sealevel; 826 IssmDouble mrate, rho_ice, rho_water, thickness, paramX, Hab;826 IssmDouble arate, rho_ice, rho_water, thickness, paramX, Hab; 827 827 int use_parameter=0; 828 828 int nonlinear_law=0; … … 843 843 Input *n_input = this->GetInput(MaterialsRheologyNEnum); _assert_(n_input); 844 844 Input *sl_input = this->GetInput(SealevelEnum); _assert_(sl_input); 845 Input * mrate_input = this->GetInput(CalvingMeltingrateEnum); _assert_(mrate_input);845 Input *arate_input = this->GetInput(CalvingAblationrateEnum); _assert_(arate_input); 846 846 847 847 /* Ice and sea water density */ … … 873 873 vel=sqrt(vx*vx+vy*vy)+1.e-14; 874 874 sl_input->GetInputValue(&sealevel,gauss); 875 mrate_input->GetInputValue(&mrate,gauss);875 arate_input->GetInputValue(&arate,gauss); 876 876 877 877 /*Compute strain rate and viscosity: */ … … 916 916 break; 917 917 case -1: 918 /* use nothing, just the mrate*/918 /* use nothing, just the arate*/ 919 919 break; 920 920 default: … … 937 937 if (nonlinear_law) { 938 938 /*This von Mises type has too strong positive feedback with vel included 939 * calvingrate[iv] = ( mrate+sigma_vm[iv]*vel/sigma_max)*gamma;939 * calvingrate[iv] = (arate+sigma_vm[iv]*vel/sigma_max)*gamma; 940 940 */ 941 941 Hab = thickness - (rho_water/rho_ice) * (sealevel-bed); … … 943 943 if (bed > sealevel) Hab = 0.; 944 944 945 calvingrate[iv] = ( mrate+Hab/sigma_max)*gamma;945 calvingrate[iv] = (arate+Hab/sigma_max)*gamma; 946 946 } 947 947 else { 948 calvingrate[iv] = mrate*gamma;948 calvingrate[iv] = arate*gamma; 949 949 } 950 950 } -
issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
r26983 r27009 654 654 CalvingCalvingrateEnum, 655 655 CalvingHabFractionEnum, 656 CalvingAblationrateEnum, 656 657 CalvingMeltingrateEnum, 657 658 CalvingStressThresholdFloatingiceEnum, -
issm/trunk-jpl/src/m/classes/calvingparameterization.m
r26850 r27009 66 66 md = checkfield(md,'fieldname','calving.min_thickness','>=',0,'NaN',1,'Inf',1,'numel',1); 67 67 md = checkfield(md,'fieldname','calving.use_param','values',[-1, 0, 1, 2, 3, 4]); 68 md = checkfield(md,'fieldname','calving.scale_theta',' >=',0,'NaN',1,'Inf',1,'numel',1);68 md = checkfield(md,'fieldname','calving.scale_theta','NaN',1,'Inf',1,'numel',1); 69 69 md = checkfield(md,'fieldname','calving.amp_alpha','<>',0,'NaN',1,'Inf',1,'numel',1); 70 70 md = checkfield(md,'fieldname','calving.midp','NaN',1,'Inf',1,'numel',1); -
issm/trunk-jpl/src/m/classes/frontalforcings.m
r23657 r27009 7 7 properties (SetAccess=public) 8 8 meltingrate = NaN; 9 ablationrate = NaN; 9 10 end 10 11 methods … … 29 30 function self = extrude(self,md) % {{{ 30 31 self.meltingrate=project3d(md,'vector',self.meltingrate,'type','node'); 32 self.ablationrate=project3d(md,'vector',self.ablationrate,'type','node'); 31 33 end % }}} 32 34 function self = setdefaultparameters(self) % {{{ 33 35 34 36 meltingrate = NaN; 37 ablationrate = NaN; 35 38 end % }}} 36 39 function md = checkconsistency(self,md,solution,analyses) % {{{ … … 39 42 40 43 md = checkfield(md,'fieldname','frontalforcings.meltingrate','NaN',1,'Inf',1,'timeseries',1,'>=',0); 44 md = checkfield(md,'fieldname','frontalforcings.ablationrate','NaN',1,'Inf',1,'timeseries',1); 41 45 42 46 end % }}} … … 44 48 disp(sprintf(' Frontalforcings parameters:')); 45 49 fielddisplay(self,'meltingrate','melting rate at given location [m/a]'); 50 fielddisplay(self,'ablationrate','frontal ablation rate at given location [m/a], it contains both calving and melting'); 46 51 end % }}} 47 52 function marshall(self,prefix,md,fid) % {{{ … … 49 54 WriteData(fid,prefix,'name','md.frontalforcings.parameterization','data',1,'format','Integer'); 50 55 WriteData(fid,prefix,'object',self,'fieldname','meltingrate','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1./yts); 56 WriteData(fid,prefix,'object',self,'fieldname','ablationrate','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts,'scale',1./yts); 51 57 end % }}} 52 58 end
Note:
See TracChangeset
for help on using the changeset viewer.