Changeset 20137
- Timestamp:
- 02/11/16 19:41:10 (9 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/SMBforcing.m
r19958 r20137 48 48 function md = checkconsistency(self,md,solution,analyses) % {{{ 49 49 50 if (solution==TransientSolutionEnum & md.transient.issmb == 0), return; end 51 50 52 if ismember(MasstransportAnalysisEnum(),analyses), 51 53 md = checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1,'Inf',1); -
issm/trunk-jpl/src/m/classes/friction.m
r19958 r20137 31 31 %Early return 32 32 if ~ismember(StressbalanceAnalysisEnum(),analyses) & ~ismember(ThermalAnalysisEnum(),analyses), return; end 33 if (solution==TransientSolutionEnum() & md.transient.isstressbalance ==0 & md.transient.isthermal == 0), return; end 34 33 35 md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1,'Inf',1); 34 36 md = checkfield(md,'fieldname','friction.q','NaN',1,'Inf',1,'size',[md.mesh.numberofelements 1]); -
issm/trunk-jpl/src/m/classes/initialization.m
r19958 r20137 46 46 end % }}} 47 47 function md = checkconsistency(self,md,solution,analyses) % {{{ 48 if ismember(StressbalanceAnalysisEnum(),analyses) 48 if ismember(StressbalanceAnalysisEnum(),analyses) & ~(solution==TransientSolutionEnum() & md.transient.isstressbalance == 0), 49 49 if ~(isnan(md.initialization.vx) | isnan(md.initialization.vy)), 50 50 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); … … 52 52 end 53 53 end 54 if ismember(MasstransportAnalysisEnum(),analyses) ,54 if ismember(MasstransportAnalysisEnum(),analyses) & ~(solution==TransientSolutionEnum() & md.transient.ismasstransport == 0), 55 55 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 56 56 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); … … 64 64 end 65 65 end 66 if ismember(ThermalAnalysisEnum(),analyses) ,66 if ismember(ThermalAnalysisEnum(),analyses) & ~(solution==TransientSolutionEnum() & md.transient.isthermal == 0), 67 67 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); 68 68 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices 1]); -
issm/trunk-jpl/src/m/classes/slr.m
r20074 r20137 17 17 degacc = 0; 18 18 requested_outputs = {}; 19 transitions = {}; 19 20 end 20 21 methods … … 46 47 %output default: 47 48 self.requested_outputs={'default'}; 49 50 %transitions should be a cell array of vectors: 51 self.transitions={}; 48 52 49 53 end % }}} … … 82 86 fielddisplay(self,'eustatic','eustatic sea level rise'); 83 87 fielddisplay(self,'degacc','accuracy (default .01 deg) for numerical discretization of the Green''s functions'); 88 fielddisplay(self,'transitions','indices into parts of the mesh that will be icecaps'); 84 89 fielddisplay(self,'requested_outputs','additional outputs requested'); 85 90 … … 96 101 WriteData(fid,'object',self,'class','sealevelrise','fieldname','eustatic','format','Boolean'); 97 102 WriteData(fid,'object',self,'class','sealevelrise','fieldname','degacc','format','Double'); 103 WriteData(fid,'object',self,'class','sealevelrise','fieldname','degacc','format','Double'); 104 WriteData(fid,'object',self,'class','sealevelrise','fieldname','transitions','format','MatArray'); 98 105 99 106 %process requested outputs -
issm/trunk-jpl/src/m/classes/transient.m
r19958 r20137 16 16 iscalving = 0; 17 17 ishydrology = 0; 18 isslr = 0; 19 iscoupler = 0; 18 20 requested_outputs = {}; 19 21 end … … 40 42 self.iscalving =0; 41 43 self.ishydrology = 0; 44 self.isslr = 0; 45 self.iscoupler = 0; 42 46 43 47 %default output … … 57 61 self.iscalving = 0; 58 62 self.ishydrology = 0; 63 self.isslr = 0; 64 self.iscoupler = 0; 59 65 60 66 %default output … … 84 90 md = checkfield(md,'fieldname','transient.ishydrology','numel',[1],'values',[0 1]); 85 91 md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1); 92 md = checkfield(md,'fieldname','transient.isslr','numel',[1],'values',[0 1]); 93 md = checkfield(md,'fieldname','transient.iscoupler','numel',[1],'values',[0 1]); 86 94 87 95 end % }}} … … 99 107 fielddisplay(self,'iscalving','indicates whether calving is used in the transient'); 100 108 fielddisplay(self,'ishydrology','indicates whether an hydrology model is used'); 109 fielddisplay(self,'isslr','indicates whether a thermal solution is used in the transient'); 110 fielddisplay(self,'iscoupler','indicates whether different models are being run with need for coupling'); 101 111 fielddisplay(self,'requested_outputs','list of additional outputs requested'); 102 112 … … 113 123 WriteData(fid,'object',self,'fieldname','islevelset','format','Boolean'); 114 124 WriteData(fid,'object',self,'fieldname','iscalving','format','Boolean'); 125 WriteData(fid,'object',self,'fieldname','isslr','format','Boolean'); 126 WriteData(fid,'object',self,'fieldname','iscoupler','format','Boolean'); 115 127 116 128 %process requested outputs … … 135 147 writejsdouble(fid,[modelname '.trans.iscalving'],self.iscalving); 136 148 writejsdouble(fid,[modelname '.trans.ishydrology'],self.ishydrology); 149 writejsdouble(fid,[modelname '.trans.isslr'],self.isslr); 150 writejsdouble(fid,[modelname '.trans.iscoupler'],self.iscoupler); 137 151 writejscellstring(fid,[modelname '.trans.requested_outputs'],self.requested_outputs); 138 152 -
issm/trunk-jpl/src/m/classes/transient.py
r19527 r20137 23 23 self.iscalving = False 24 24 self.ishydrology = False 25 self.isslr = False 25 26 self.requested_outputs = [] 26 27 … … 41 42 string="%s\n%s"%(string,fielddisplay(self,'iscalving','indicates whether calving is used in the transient')) 42 43 string="%s\n%s"%(string,fielddisplay(self,'ishydrology','indicates whether an hydrology model is used')) 44 string="%s\n%s"%(string,fielddisplay(self,'isslr','indicates if a sea level rise solution is used in the transient')) 43 45 string="%s\n%s"%(string,fielddisplay(self,'requested_outputs','list of additional outputs requested')) 44 46 return string … … 65 67 self.iscalving = False 66 68 self.ishydrology = False 69 self.isslr = False 67 70 68 71 #default output … … 83 86 self.iscalving = False 84 87 self.ishydrology = False 88 self.isslr = False 85 89 86 90 #default output … … 104 108 md = checkfield(md,'fieldname','transient.ishydrology','numel',[1],'values',[0,1]) 105 109 md = checkfield(md,'fieldname','transient.iscalving','numel',[1],'values',[0,1]); 110 md = checkfield(md,'fieldname','transient.isslr','numel',[1],'values',[0,1]) 106 111 md = checkfield(md,'fieldname','transient.requested_outputs','stringrow',1) 107 112 … … 119 124 WriteData(fid,'object',self,'fieldname','ishydrology','format','Boolean') 120 125 WriteData(fid,'object',self,'fieldname','iscalving','format','Boolean') 126 WriteData(fid,'object',self,'fieldname','isslr','format','Boolean') 121 127 122 128 #process requested outputs
Note:
See TracChangeset
for help on using the changeset viewer.