source:
issm/oecreview/Archive/19101-20495/ISSM-19897-19898.diff
Last change on this file was 20498, checked in by , 9 years ago | |
---|---|
File size: 42.1 KB |
-
../trunk-jpl/src/py3/classes/SMBforcing.py
42 42 def checkconsistency(self,md,solution,analyses): # {{{ 43 43 44 44 if MasstransportAnalysisEnum() in analyses: 45 md = checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1 )45 md = checkfield(md,'fieldname','smb.mass_balance','timeseries',1,'NaN',1,'Inf',1) 46 46 47 47 if BalancethicknessAnalysisEnum() in analyses: 48 md = checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices],'NaN',1 )48 md = checkfield(md,'fieldname','smb.mass_balance','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 49 49 50 50 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) 51 51 return md -
../trunk-jpl/src/py3/classes/calvinglevermann.py
55 55 md = checkfield(md,'fieldname','calving.spclevelset','timeseries',1) 56 56 md = checkfield(md,'fieldname','calving.stabilization','values',[0,1,2]); 57 57 md = checkfield(md,'fieldname','calving.coeff','size',[md.mesh.numberofvertices],'>',0) 58 md = checkfield(md,'fieldname','calving.meltingrate','NaN',1,' size',[md.mesh.numberofvertices],'>=',0)58 md = checkfield(md,'fieldname','calving.meltingrate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices],'>=',0) 59 59 return md 60 60 # }}} 61 61 def marshall(self,md,fid): # {{{ -
../trunk-jpl/src/py3/classes/m1qn3inversion.py
144 144 md = checkfield(md,'fieldname','inversion.iscontrol','values',[0,1]) 145 145 md = checkfield(md,'fieldname','inversion.incomplete_adjoint','values',[0,1]) 146 146 md = checkfield(md,'fieldname','inversion.control_parameters','cell',1,'values',supportedcontrols()) 147 md = checkfield(md,'fieldname','inversion.control_scaling_factors','size',[num_controls],'>',0,'NaN',1 )147 md = checkfield(md,'fieldname','inversion.control_scaling_factors','size',[num_controls],'>',0,'NaN',1,'Inf',1) 148 148 md = checkfield(md,'fieldname','inversion.maxsteps','numel',[1],'>=',0) 149 149 md = checkfield(md,'fieldname','inversion.maxiter','numel',[1],'>=',0) 150 150 md = checkfield(md,'fieldname','inversion.dxmin','numel',[1],'>',0.) … … 155 155 md = checkfield(md,'fieldname','inversion.max_parameters','size',[md.mesh.numberofvertices,num_controls]) 156 156 157 157 if solution==BalancethicknessSolutionEnum(): 158 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices],'NaN',1 )158 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 159 159 else: 160 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices],'NaN',1 )161 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices],'NaN',1 )160 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 161 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 162 162 163 163 return md 164 164 # }}} -
../trunk-jpl/src/py3/classes/frictioncoulomb.py
47 47 if StressbalanceAnalysisEnum() not in analyses and ThermalAnalysisEnum() not in analyses: 48 48 return md 49 49 50 md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1 )51 md = checkfield(md,'fieldname','friction.coefficientcoulomb','timeseries',1,'NaN',1 )52 md = checkfield(md,'fieldname','friction.q','NaN',1,' size',[md.mesh.numberofelements])53 md = checkfield(md,'fieldname','friction.p','NaN',1,' size',[md.mesh.numberofelements])50 md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1,'Inf',1) 51 md = checkfield(md,'fieldname','friction.coefficientcoulomb','timeseries',1,'NaN',1,'Inf',1) 52 md = checkfield(md,'fieldname','friction.q','NaN',1,'Inf',1,'size',[md.mesh.numberofelements]) 53 md = checkfield(md,'fieldname','friction.p','NaN',1,'Inf',1,'size',[md.mesh.numberofelements]) 54 54 55 55 return md 56 56 # }}} -
../trunk-jpl/src/py3/classes/gia.py
47 47 if (GiaAnalysisEnum() not in analyses): 48 48 return md 49 49 50 md = checkfield(md,'fieldname','gia.mantle_viscosity','NaN',1,' size',[md.mesh.numberofvertices,1],'>',0)51 md = checkfield(md,'fieldname','gia.lithosphere_thickness','NaN',1,' size',[md.mesh.numberofvertices,1],'>',0)50 md = checkfield(md,'fieldname','gia.mantle_viscosity','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1],'>',0) 51 md = checkfield(md,'fieldname','gia.lithosphere_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1],'>',0) 52 52 md = checkfield(md,'fieldname','gia.cross_section_shape','numel',[1],'values',[1,2]) 53 53 54 54 #be sure that if we are running a masstransport ice flow model coupled with gia, that thickness forcings -
../trunk-jpl/src/py3/classes/balancethickness.py
42 42 return md 43 43 44 44 md = checkfield(md,'fieldname','balancethickness.spcthickness') 45 md = checkfield(md,'fieldname','balancethickness.thickening_rate','size',[md.mesh.numberofvertices],'NaN',1 )45 md = checkfield(md,'fieldname','balancethickness.thickening_rate','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 46 46 md = checkfield(md,'fieldname','balancethickness.stabilization','size',[1],'values',[0,1,2,3]) 47 47 48 48 return md -
../trunk-jpl/src/py3/classes/SMBd18opdd.py
90 90 91 91 if MasstransportAnalysisEnum() in analyses: 92 92 md = checkfield(md,'fieldname','smb.desfac','<=',1,'numel',[1]) 93 md = checkfield(md,'fieldname','smb.s0p','>=',0,'NaN',1,' size',[md.mesh.numberofvertices,1])94 md = checkfield(md,'fieldname','smb.s0t','>=',0,'NaN',1,' size',[md.mesh.numberofvertices,1])93 md = checkfield(md,'fieldname','smb.s0p','>=',0,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 94 md = checkfield(md,'fieldname','smb.s0t','>=',0,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 95 95 md = checkfield(md,'fieldname','smb.rlaps','>=',0,'numel',[1]) 96 96 md = checkfield(md,'fieldname','smb.rlapslgm','>=',0,'numel',[1]) 97 97 98 98 if self.isd18opd: 99 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)100 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)101 md = checkfield(md,'fieldname','smb.delta18o','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)99 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 100 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 101 md = checkfield(md,'fieldname','smb.delta18o','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 102 102 md = checkfield(md,'fieldname','smb.dpermil','>=',0,'numel',[1]) 103 103 104 104 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) -
../trunk-jpl/src/py3/classes/linearbasalforcings.py
68 68 def checkconsistency(self,md,solution,analyses): # {{{ 69 69 70 70 if MasstransportAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and not md.transient.ismasstransport): 71 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)71 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 72 72 md = checkfield(md,'fieldname','basalforcings.deepwater_melting_rate','>=',0); 73 73 md = checkfield(md,'fieldname','basalforcings.deepwater_elevation','<',md.basalforcings.upperwater_elevation); 74 74 md = checkfield(md,'fieldname','basalforcings.upperwater_elevation','<',0); 75 75 76 76 if BalancethicknessAnalysisEnum() in analyses: 77 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' size',[md.mesh.numberofvertices])77 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 78 78 md = checkfield(md,'fieldname','basalforcings.deepwater_melting_rate','>=',0); 79 79 md = checkfield(md,'fieldname','basalforcings.deepwater_elevation','<',md.basalforcings.upperwater_elevation); 80 80 md = checkfield(md,'fieldname','basalforcings.upperwater_elevation','<',0); 81 81 82 82 if ThermalAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and not md.transient.isthermal): 83 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)83 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 84 84 md = checkfield(md,'fieldname','basalforcings.deepwater_melting_rate','>=',0); 85 85 md = checkfield(md,'fieldname','basalforcings.deepwater_elevation','<',md.basalforcings.upperwater_elevation); 86 86 md = checkfield(md,'fieldname','basalforcings.upperwater_elevation','<',0); 87 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,' timeseries',1,'>=',0)87 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,'Inf',1,'timeseries',1,'>=',0) 88 88 89 89 return md 90 90 # }}} -
../trunk-jpl/src/py3/classes/SMBpdd.py
119 119 120 120 if MasstransportAnalysisEnum() in analyses: 121 121 md = checkfield(md,'fieldname','smb.desfac','<=',1,'numel',[1]) 122 md = checkfield(md,'fieldname','smb.s0p','>=',0,'NaN',1,' size',[md.mesh.numberofvertices,1])123 md = checkfield(md,'fieldname','smb.s0t','>=',0,'NaN',1,' size',[md.mesh.numberofvertices,1])122 md = checkfield(md,'fieldname','smb.s0p','>=',0,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 123 md = checkfield(md,'fieldname','smb.s0t','>=',0,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 124 124 md = checkfield(md,'fieldname','smb.rlaps','>=',0,'numel',[1]) 125 125 md = checkfield(md,'fieldname','smb.rlapslgm','>=',0,'numel',[1]) 126 126 127 127 if (self.isdelta18o==0 and self.ismungsm==0): 128 md = checkfield(md,'fieldname','smb.monthlytemperatures','NaN',1,' timeseries',1)129 md = checkfield(md,'fieldname','smb.precipitation','NaN',1,' timeseries',1)128 md = checkfield(md,'fieldname','smb.monthlytemperatures','NaN',1,'Inf',1,'timeseries',1) 129 md = checkfield(md,'fieldname','smb.precipitation','NaN',1,'Inf',1,'timeseries',1) 130 130 elif self.isdelta18o: 131 md = checkfield(md,'fieldname','smb.delta18o','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)132 md = checkfield(md,'fieldname','smb.delta18o_surface','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)133 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)134 md = checkfield(md,'fieldname','smb.temperatures_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)135 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)136 md = checkfield(md,'fieldname','smb.precipitations_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)137 md = checkfield(md,'fieldname','smb.Tdiff','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)138 md = checkfield(md,'fieldname','smb.sealev','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)131 md = checkfield(md,'fieldname','smb.delta18o','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 132 md = checkfield(md,'fieldname','smb.delta18o_surface','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 133 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 134 md = checkfield(md,'fieldname','smb.temperatures_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 135 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 136 md = checkfield(md,'fieldname','smb.precipitations_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 137 md = checkfield(md,'fieldname','smb.Tdiff','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 138 md = checkfield(md,'fieldname','smb.sealev','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 139 139 elif self.ismungsm: 140 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)141 md = checkfield(md,'fieldname','smb.temperatures_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)142 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)143 md = checkfield(md,'fieldname','smb.precipitations_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,' timeseries',1)144 md = checkfield(md,'fieldname','smb.Pfac','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)145 md = checkfield(md,'fieldname','smb.Tdiff','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)146 md = checkfield(md,'fieldname','smb.sealev','NaN',1,' size',[2,numpy.nan],'singletimeseries',1)140 md = checkfield(md,'fieldname','smb.temperatures_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 141 md = checkfield(md,'fieldname','smb.temperatures_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 142 md = checkfield(md,'fieldname','smb.precipitations_presentday','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 143 md = checkfield(md,'fieldname','smb.precipitations_lgm','size',[md.mesh.numberofvertices+1,12],'NaN',1,'Inf',1,'timeseries',1) 144 md = checkfield(md,'fieldname','smb.Pfac','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 145 md = checkfield(md,'fieldname','smb.Tdiff','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 146 md = checkfield(md,'fieldname','smb.sealev','NaN',1,'Inf',1,'size',[2,numpy.nan],'singletimeseries',1) 147 147 148 148 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) 149 149 return md -
../trunk-jpl/src/py3/classes/taoinversion.py
155 155 156 156 157 157 if solution==BalancethicknessSolutionEnum(): 158 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1 )158 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1,'Inf',1) 159 159 elif solution==BalancethicknessSoftSolutionEnum(): 160 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1 )160 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices, 1],'NaN',1,'Inf',1) 161 161 else: 162 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices, 1],'NaN',1 )163 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices, 1],'NaN',1 )162 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices, 1],'NaN',1,'Inf',1) 163 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices, 1],'NaN',1,'Inf',1) 164 164 165 165 def marshall(self, md, fid): 166 166 -
../trunk-jpl/src/py3/classes/frictionweertman.py
36 36 if StressbalanceAnalysisEnum() not in analyses and ThermalAnalysisEnum() not in analyses: 37 37 return md 38 38 39 md = checkfield(md,'fieldname','friction.C','timeseries',1,'NaN',1 )40 md = checkfield(md,'fieldname','friction.m','NaN',1,' size',[md.mesh.numberofelements])39 md = checkfield(md,'fieldname','friction.C','timeseries',1,'NaN',1,'Inf',1) 40 md = checkfield(md,'fieldname','friction.m','NaN',1,'Inf',1,'size',[md.mesh.numberofelements]) 41 41 42 42 return md 43 43 # }}} -
../trunk-jpl/src/py3/classes/mesh3dprisms.py
105 105 #}}} 106 106 def checkconsistency(self,md,solution,analyses): # {{{ 107 107 108 md = checkfield(md,'fieldname','mesh.x','NaN',1,' size',[md.mesh.numberofvertices])109 md = checkfield(md,'fieldname','mesh.y','NaN',1,' size',[md.mesh.numberofvertices])110 md = checkfield(md,'fieldname','mesh.z','NaN',1,' size',[md.mesh.numberofvertices])111 md = checkfield(md,'fieldname','mesh.elements','NaN',1,' >',0,'values',numpy.arange(1,md.mesh.numberofvertices+1))108 md = checkfield(md,'fieldname','mesh.x','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 109 md = checkfield(md,'fieldname','mesh.y','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 110 md = checkfield(md,'fieldname','mesh.z','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 111 md = checkfield(md,'fieldname','mesh.elements','NaN',1,'Inf',1,'>',0,'values',numpy.arange(1,md.mesh.numberofvertices+1)) 112 112 md = checkfield(md,'fieldname','mesh.elements','size',[md.mesh.numberofelements,6]) 113 113 if numpy.any(numpy.logical_not(m.ismember(numpy.arange(1,md.mesh.numberofvertices+1),md.mesh.elements))): 114 114 md.checkmessage("orphan nodes have been found. Check the mesh3dprisms outline") -
../trunk-jpl/src/py3/classes/SMBgradients.py
48 48 def checkconsistency(self,md,solution,analyses): # {{{ 49 49 50 50 if MasstransportAnalysisEnum() in analyses: 51 md = checkfield(md,'fieldname','smb.href','timeseries',1,'NaN',1 )52 md = checkfield(md,'fieldname','smb.smbref','timeseries',1,'NaN',1 )53 md = checkfield(md,'fieldname','smb.b_pos','timeseries',1,'NaN',1 )54 md = checkfield(md,'fieldname','smb.b_neg','timeseries',1,'NaN',1 )51 md = checkfield(md,'fieldname','smb.href','timeseries',1,'NaN',1,'Inf',1) 52 md = checkfield(md,'fieldname','smb.smbref','timeseries',1,'NaN',1,'Inf',1) 53 md = checkfield(md,'fieldname','smb.b_pos','timeseries',1,'NaN',1,'Inf',1) 54 md = checkfield(md,'fieldname','smb.b_neg','timeseries',1,'NaN',1,'Inf',1) 55 55 56 56 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) 57 57 return md -
../trunk-jpl/src/py3/classes/calving.py
54 54 55 55 md = checkfield(md,'fieldname','calving.spclevelset','timeseries',1) 56 56 md = checkfield(md,'fieldname','calving.stabilization','values',[0,1,2]); 57 md = checkfield(md,'fieldname','calving.calvingrate','>=',0,'timeseries',1,'NaN',1 );58 md = checkfield(md,'fieldname','calving.meltingrate','>=',0,'timeseries',1,'NaN',1 );57 md = checkfield(md,'fieldname','calving.calvingrate','>=',0,'timeseries',1,'NaN',1,'Inf',1); 58 md = checkfield(md,'fieldname','calving.meltingrate','>=',0,'timeseries',1,'NaN',1,'Inf',1); 59 59 60 60 return md 61 61 # }}} -
../trunk-jpl/src/py3/classes/SMBcomponents.py
55 55 def checkconsistency(self,md,solution,analyses): # {{{ 56 56 57 57 if MasstransportAnalysisEnum() in analyses: 58 md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1 )58 md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1) 59 59 60 60 if BalancethicknessAnalysisEnum() in analyses: 61 md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1 )61 md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 62 62 63 63 if MasstransportAnalysisEnum() in analyses: 64 md = checkfield(md,'fieldname','smb.runoff','timeseries',1,'NaN',1 )64 md = checkfield(md,'fieldname','smb.runoff','timeseries',1,'NaN',1,'Inf',1) 65 65 66 66 if BalancethicknessAnalysisEnum() in analyses: 67 md = checkfield(md,'fieldname','smb.runoff','size',[md.mesh.numberofvertices],'NaN',1 )67 md = checkfield(md,'fieldname','smb.runoff','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 68 68 69 69 if MasstransportAnalysisEnum() in analyses: 70 md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1 )70 md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1) 71 71 72 72 if BalancethicknessAnalysisEnum() in analyses: 73 md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1 )73 md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 74 74 75 75 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) 76 76 -
../trunk-jpl/src/py3/classes/stressbalance.py
140 140 md = checkfield(md,'fieldname','stressbalance.reltol','size',[1]) 141 141 md = checkfield(md,'fieldname','stressbalance.abstol','size',[1]) 142 142 md = checkfield(md,'fieldname','stressbalance.isnewton','numel',[1],'values',[0,1,2]) 143 md = checkfield(md,'fieldname','stressbalance.FSreconditioning','size',[1],'NaN',1 )144 md = checkfield(md,'fieldname','stressbalance.viscosity_overshoot','size',[1],'NaN',1 )143 md = checkfield(md,'fieldname','stressbalance.FSreconditioning','size',[1],'NaN',1,'Inf',1) 144 md = checkfield(md,'fieldname','stressbalance.viscosity_overshoot','size',[1],'NaN',1,'Inf',1) 145 145 md = checkfield(md,'fieldname','stressbalance.maxiter','size',[1],'>=',1) 146 146 md = checkfield(md,'fieldname','stressbalance.referential','size',[md.mesh.numberofvertices,6]) 147 147 md = checkfield(md,'fieldname','stressbalance.loadingforce','size',[md.mesh.numberofvertices,3]) -
../trunk-jpl/src/py3/classes/geometry.py
45 45 #}}} 46 46 def checkconsistency(self,md,solution,analyses): # {{{ 47 47 48 md = checkfield(md,'fieldname','geometry.surface' ,'NaN',1,' size',[md.mesh.numberofvertices])49 md = checkfield(md,'fieldname','geometry.base' ,'NaN',1,' size',[md.mesh.numberofvertices])50 md = checkfield(md,'fieldname','geometry.thickness','NaN',1,' size',[md.mesh.numberofvertices],'>',0,'timeseries',1)48 md = checkfield(md,'fieldname','geometry.surface' ,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 49 md = checkfield(md,'fieldname','geometry.base' ,'NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 50 md = checkfield(md,'fieldname','geometry.thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices],'>',0,'timeseries',1) 51 51 if any(abs(self.thickness-self.surface+self.base)>10**-9): 52 52 md.checkmessage("equality thickness=surface-base violated") 53 53 if solution==TransientSolutionEnum() and md.transient.isgroundingline: 54 md = checkfield(md,'fieldname','geometry.bed','NaN',1,' size',[md.mesh.numberofvertices])54 md = checkfield(md,'fieldname','geometry.bed','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 55 55 56 56 return md 57 57 # }}} -
../trunk-jpl/src/py3/classes/mismipbasalforcings.py
57 57 #Early return 58 58 if MasstransportAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and md.transient.ismasstransport==0): 59 59 60 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)60 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 61 61 md = checkfield(md,'fieldname','basalforcings.meltrate_factor','>=',0,'numel',[1]) 62 62 md = checkfield(md,'fieldname','basalforcings.threshold_thickness','>=',0,'numel',[1]) 63 63 md = checkfield(md,'fieldname','basalforcings.upperdepth_melt','<=',0,'numel',[1]) 64 64 65 65 if BalancethicknessAnalysisEnum() in analyses: 66 66 67 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' size',[md.mesh.numberofvertices])67 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 68 68 md = checkfield(md,'fieldname','basalforcings.meltrate_factor','>=',0,'numel',[1]) 69 69 md = checkfield(md,'fieldname','basalforcings.threshold_thickness','>=',0,'numel',[1]) 70 70 md = checkfield(md,'fieldname','basalforcings.upperdepth_melt','<=',0,'numel',[1]) 71 71 72 72 if ThermalAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and md.transient.isthermal==0): 73 73 74 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)74 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 75 75 md = checkfield(md,'fieldname','basalforcings.meltrate_factor','>=',0,'numel',[1]) 76 76 md = checkfield(md,'fieldname','basalforcings.threshold_thickness','>=',0,'numel',[1]) 77 77 md = checkfield(md,'fieldname','basalforcings.upperdepth_melt','<=',0,'numel',[1]) 78 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,' timeseries',1,'>=',0)78 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,'Inf',1,'timeseries',1,'>=',0) 79 79 return md 80 80 # }}} 81 81 def marshall(self,md,fid): # {{{ -
../trunk-jpl/src/py3/classes/matice.py
122 122 md = checkfield(md,'fieldname','materials.rho_water','>',0) 123 123 md = checkfield(md,'fieldname','materials.rho_freshwater','>',0) 124 124 md = checkfield(md,'fieldname','materials.mu_water','>',0) 125 md = checkfield(md,'fieldname','materials.rheology_B','>',0,'timeseries',1,'NaN',1 )125 md = checkfield(md,'fieldname','materials.rheology_B','>',0,'timeseries',1,'NaN',1,'Inf',1) 126 126 md = checkfield(md,'fieldname','materials.rheology_n','>',0,'size',[md.mesh.numberofelements]) 127 127 md = checkfield(md,'fieldname','materials.rheology_law','values',['None','Cuffey','Paterson','Arrhenius','LliboutryDuval']) 128 128 md = checkfield(md,'fieldname','materials.lithosphere_shear_modulus','>',0,'numel',[1]); -
../trunk-jpl/src/py3/classes/timestepping.py
52 52 #}}} 53 53 def checkconsistency(self,md,solution,analyses): # {{{ 54 54 55 md = checkfield(md,'fieldname','timestepping.start_time','numel',[1],'NaN',1 )56 md = checkfield(md,'fieldname','timestepping.final_time','numel',[1],'NaN',1 )57 md = checkfield(md,'fieldname','timestepping.time_step','numel',[1],'>=',0,'NaN',1 )55 md = checkfield(md,'fieldname','timestepping.start_time','numel',[1],'NaN',1,'Inf',1) 56 md = checkfield(md,'fieldname','timestepping.final_time','numel',[1],'NaN',1,'Inf',1) 57 md = checkfield(md,'fieldname','timestepping.time_step','numel',[1],'>=',0,'NaN',1,'Inf',1) 58 58 md = checkfield(md,'fieldname','timestepping.time_adapt','numel',[1],'values',[0,1]) 59 59 md = checkfield(md,'fieldname','timestepping.cfl_coefficient','numel',[1],'>',0,'<=',1) 60 60 if self.final_time-self.start_time<0: -
../trunk-jpl/src/py3/classes/SMBmeltcomponents.py
61 61 def checkconsistency(self,md,solution,analyses): # {{{ 62 62 63 63 if MasstransportAnalysisEnum() in analyses: 64 md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1 )64 md = checkfield(md,'fieldname','smb.accumulation','timeseries',1,'NaN',1,'Inf',1) 65 65 66 66 if BalancethicknessAnalysisEnum() in analyses: 67 md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1 )67 md = checkfield(md,'fieldname','smb.accumulation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 68 68 69 69 if MasstransportAnalysisEnum() in analyses: 70 md = checkfield(md,'fieldname','smb.melt','timeseries',1,'NaN',1 )70 md = checkfield(md,'fieldname','smb.melt','timeseries',1,'NaN',1,'Inf',1) 71 71 72 72 if BalancethicknessAnalysisEnum() in analyses: 73 md = checkfield(md,'fieldname','smb.melt','size',[md.mesh.numberofvertices],'NaN',1 )73 md = checkfield(md,'fieldname','smb.melt','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 74 74 75 75 if MasstransportAnalysisEnum() in analyses: 76 md = checkfield(md,'fieldname','smb.refreeze','timeseries',1,'NaN',1 )76 md = checkfield(md,'fieldname','smb.refreeze','timeseries',1,'NaN',1,'Inf',1) 77 77 78 78 if BalancethicknessAnalysisEnum() in analyses: 79 md = checkfield(md,'fieldname','smb.refreeze','size',[md.mesh.numberofvertices],'NaN',1 )79 md = checkfield(md,'fieldname','smb.refreeze','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 80 80 81 81 if MasstransportAnalysisEnum() in analyses: 82 md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1 )82 md = checkfield(md,'fieldname','smb.evaporation','timeseries',1,'NaN',1,'Inf',1) 83 83 84 84 if BalancethicknessAnalysisEnum() in analyses: 85 md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1 )85 md = checkfield(md,'fieldname','smb.evaporation','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 86 86 87 87 md = checkfield(md,'fieldname','masstransport.requested_outputs','stringrow',1) 88 88 return md -
../trunk-jpl/src/py3/classes/inversion.py
150 150 md.checkmessage("'inversion can only be performed for SSA, HO or FS ice flow models"); 151 151 152 152 if solution==BalancethicknessSolutionEnum(): 153 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices],'NaN',1 )153 md = checkfield(md,'fieldname','inversion.thickness_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 154 154 else: 155 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices],'NaN',1 )156 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices],'NaN',1 )155 md = checkfield(md,'fieldname','inversion.vx_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 156 md = checkfield(md,'fieldname','inversion.vy_obs','size',[md.mesh.numberofvertices],'NaN',1,'Inf',1) 157 157 158 158 return md 159 159 # }}} -
../trunk-jpl/src/py3/classes/friction.py
44 44 if StressbalanceAnalysisEnum() not in analyses and ThermalAnalysisEnum() not in analyses: 45 45 return md 46 46 47 md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1 )48 md = checkfield(md,'fieldname','friction.q','NaN',1,' size',[md.mesh.numberofelements])49 md = checkfield(md,'fieldname','friction.p','NaN',1,' size',[md.mesh.numberofelements])47 md = checkfield(md,'fieldname','friction.coefficient','timeseries',1,'NaN',1,'Inf',1) 48 md = checkfield(md,'fieldname','friction.q','NaN',1,'Inf',1,'size',[md.mesh.numberofelements]) 49 md = checkfield(md,'fieldname','friction.p','NaN',1,'Inf',1,'size',[md.mesh.numberofelements]) 50 50 51 51 return md 52 52 # }}} -
../trunk-jpl/src/py3/classes/basalforcings.py
54 54 def checkconsistency(self,md,solution,analyses): # {{{ 55 55 56 56 if MasstransportAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and not md.transient.ismasstransport): 57 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)58 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,' timeseries',1)57 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 58 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 59 59 60 60 if BalancethicknessAnalysisEnum() in analyses: 61 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' size',[md.mesh.numberofvertices])62 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,' size',[md.mesh.numberofvertices])61 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 62 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 63 63 64 64 if ThermalAnalysisEnum() in analyses and not (solution==TransientSolutionEnum() and not md.transient.isthermal): 65 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,' timeseries',1)66 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,' timeseries',1)67 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,' timeseries',1,'>=',0)65 md = checkfield(md,'fieldname','basalforcings.groundedice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 66 md = checkfield(md,'fieldname','basalforcings.floatingice_melting_rate','NaN',1,'Inf',1,'timeseries',1) 67 md = checkfield(md,'fieldname','basalforcings.geothermalflux','NaN',1,'Inf',1,'timeseries',1,'>=',0) 68 68 69 69 return md 70 70 # }}} -
../trunk-jpl/src/py3/classes/mesh2d.py
83 83 #}}} 84 84 def checkconsistency(self,md,solution,analyses): # {{{ 85 85 86 md = checkfield(md,'fieldname','mesh.x','NaN',1,' size',[md.mesh.numberofvertices])87 md = checkfield(md,'fieldname','mesh.y','NaN',1,' size',[md.mesh.numberofvertices])88 md = checkfield(md,'fieldname','mesh.elements','NaN',1,' >',0,'values',numpy.arange(1,md.mesh.numberofvertices+1))86 md = checkfield(md,'fieldname','mesh.x','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 87 md = checkfield(md,'fieldname','mesh.y','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 88 md = checkfield(md,'fieldname','mesh.elements','NaN',1,'Inf',1,'>',0,'values',numpy.arange(1,md.mesh.numberofvertices+1)) 89 89 md = checkfield(md,'fieldname','mesh.elements','size',[md.mesh.numberofelements,3]) 90 90 # if numpy.any(numpy.logical_not(m.ismember(numpy.arange(1,md.mesh.numberofvertices+1),md.mesh.elements))): 91 91 if any(numpy.logical_not(m.ismember(numpy.arange(1,md.mesh.numberofvertices+1),md.mesh.elements))): -
../trunk-jpl/src/py3/classes/initialization.py
70 70 def checkconsistency(self,md,solution,analyses): # {{{ 71 71 if StressbalanceAnalysisEnum() in analyses: 72 72 if not numpy.any(numpy.logical_or(numpy.isnan(md.initialization.vx),numpy.isnan(md.initialization.vy))): 73 md = checkfield(md,'fieldname','initialization.vx','NaN',1,' size',[md.mesh.numberofvertices])74 md = checkfield(md,'fieldname','initialization.vy','NaN',1,' size',[md.mesh.numberofvertices])73 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 74 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 75 75 if MasstransportAnalysisEnum() in analyses: 76 md = checkfield(md,'fieldname','initialization.vx','NaN',1,' size',[md.mesh.numberofvertices])77 md = checkfield(md,'fieldname','initialization.vy','NaN',1,' size',[md.mesh.numberofvertices])76 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 77 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 78 78 if BalancethicknessAnalysisEnum() in analyses: 79 md = checkfield(md,'fieldname','initialization.vx','NaN',1,' size',[md.mesh.numberofvertices])80 md = checkfield(md,'fieldname','initialization.vy','NaN',1,' size',[md.mesh.numberofvertices])79 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 80 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 81 81 #Triangle with zero velocity 82 82 if numpy.any(numpy.logical_and(numpy.sum(numpy.abs(md.initialization.vx[md.mesh.elements-1]),axis=1)==0,\ 83 83 numpy.sum(numpy.abs(md.initialization.vy[md.mesh.elements-1]),axis=1)==0)): 84 84 md.checkmessage("at least one triangle has all its vertices with a zero velocity") 85 85 if ThermalAnalysisEnum() in analyses: 86 md = checkfield(md,'fieldname','initialization.vx','NaN',1,' size',[md.mesh.numberofvertices])87 md = checkfield(md,'fieldname','initialization.vy','NaN',1,' size',[md.mesh.numberofvertices])88 md = checkfield(md,'fieldname','initialization.temperature','NaN',1,' size',[md.mesh.numberofvertices])86 md = checkfield(md,'fieldname','initialization.vx','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 87 md = checkfield(md,'fieldname','initialization.vy','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 88 md = checkfield(md,'fieldname','initialization.temperature','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 89 89 if md.mesh.dimension()==3: 90 md = checkfield(md,'fieldname','initialization.vz','NaN',1,' size',[md.mesh.numberofvertices])91 md = checkfield(md,'fieldname','initialization.pressure','NaN',1,' size',[md.mesh.numberofvertices])90 md = checkfield(md,'fieldname','initialization.vz','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 91 md = checkfield(md,'fieldname','initialization.pressure','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 92 92 if (EnthalpyAnalysisEnum() in analyses and md.thermal.isenthalpy): 93 93 md = checkfield(md,'fieldname','initialization.waterfraction','>=',0,'size',[md.mesh.numberofvertices]) 94 94 md = checkfield(md,'fieldname','initialization.watercolumn' ,'>=',0,'size',[md.mesh.numberofvertices]) 95 95 if HydrologyShreveAnalysisEnum() in analyses: 96 96 if hasattr(md.hydrology,'hydrologyshreve'): 97 md = checkfield(md,'fieldname','initialization.watercolumn','NaN',1,' size',[md.mesh.numberofvertices])97 md = checkfield(md,'fieldname','initialization.watercolumn','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices]) 98 98 if HydrologyDCInefficientAnalysisEnum() in analyses: 99 99 if hasattr(md.hydrology,'hydrologydc'): 100 md = checkfield(md,'fieldname','initialization.sediment_head','NaN',1,' size',[md.mesh.numberofvertices,1])100 md = checkfield(md,'fieldname','initialization.sediment_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 101 101 if HydrologyDCEfficientAnalysisEnum() in analyses: 102 102 if hasattr(md.hydrology,'hydrologydc'): 103 103 if md.hydrology.isefficientlayer==1: 104 md = checkfield(md,'fieldname','initialization.epl_head','NaN',1,' size',[md.mesh.numberofvertices,1])105 md = checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,' size',[md.mesh.numberofvertices,1])104 md = checkfield(md,'fieldname','initialization.epl_head','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 105 md = checkfield(md,'fieldname','initialization.epl_thickness','NaN',1,'Inf',1,'size',[md.mesh.numberofvertices,1]) 106 106 107 107 return md 108 108 # }}} -
../trunk-jpl/src/py3/classes/hydrologydc.py
162 162 if self.transfer_flag==1: 163 163 md = checkfield(md,'fieldname','hydrology.leakage_factor','>',0.,'numel',[1]) 164 164 165 md = checkfield(md,'fieldname','hydrology.basal_moulin_input','NaN',1,' timeseries',1)165 md = checkfield(md,'fieldname','hydrology.basal_moulin_input','NaN',1,'Inf',1,'timeseries',1) 166 166 md = checkfield(md,'fieldname','hydrology.spcsediment_head','timeseries',1) 167 167 md = checkfield(md,'fieldname','hydrology.sediment_compressibility','>',0.,'numel',[1]) 168 168 md = checkfield(md,'fieldname','hydrology.sediment_porosity','>',0.,'numel',[1])
Note:
See TracBrowser
for help on using the repository browser.