Changeset 13131
- Timestamp:
- 08/22/12 15:38:24 (13 years ago)
- Location:
- issm/trunk-jpl/src/m/classes
- Files:
-
- 2 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk-jpl/src/m/classes/initialization.m
r13119 r13131 82 82 WriteData(fid,'data',obj.pressure,'format','DoubleMat','mattype',1,'enum',PressureEnum); 83 83 WriteData(fid,'data',obj.temperature,'format','DoubleMat','mattype',1,'enum',TemperatureEnum); 84 WriteData(fid,'data',obj.surfacetemp,'format','DoubleMat','mattype',1,'enum',TemperatureSurfaceEnum);85 WriteData(fid,'data',obj.basaltemp,'format','DoubleMat','mattype',1,'enum',TemperatureBasalEnum);86 84 WriteData(fid,'data',obj.watercolumn,'format','DoubleMat','mattype',1,'enum',WatercolumnEnum); 87 85 WriteData(fid,'data',obj.waterfraction,'format','DoubleMat','mattype',1,'enum',WaterfractionEnum); -
issm/trunk-jpl/src/m/classes/matice.m
r13125 r13131 1 %MAT ERIALSclass definition1 %MATICE class definition 2 2 % 3 3 % Usage: 4 % mat erials=materials();4 % matice=matice(); 5 5 6 classdef mat erials6 classdef matice 7 7 properties (SetAccess=public) 8 8 rho_ice = 0.; … … 19 19 rheology_B = NaN; 20 20 rheology_n = NaN; 21 rheology_Z = NaN;22 21 rheology_law = ''; 23 22 end 24 23 methods 25 function obj = mat erials(varargin) % {{{24 function obj = matice(varargin) % {{{ 26 25 switch nargin 27 26 case 0 … … 77 76 md = checkfield(md,'materials.rheology_B','>',0,'size',[md.mesh.numberofvertices 1]); 78 77 md = checkfield(md,'materials.rheology_n','>',0,'size',[md.mesh.numberofelements 1]); 79 md = checkfield(md,'materials.rheology_Z','>',0,'size',[md.mesh.numberofvertices 1]);80 78 md = checkfield(md,'materials.rheology_law','values',{'None' 'Paterson' 'Arrhenius'}); 81 79 end % }}} … … 96 94 fielddisplay(obj,'rheology_B','flow law parameter [Pa/s^(1/n)]'); 97 95 fielddisplay(obj,'rheology_n','Glen''s flow law exponent'); 98 fielddisplay(obj,'rheology_Z','rheology multiplier');99 96 fielddisplay(obj,'rheology_law','law for the temperature dependance of the rheology: ''None'', ''Paterson'' or ''Arrhenius'''); 100 97 end % }}} 101 98 function marshall(obj,fid) % {{{ 102 WriteData(fid,' object',obj,'fieldname','rho_ice','format','Double');103 WriteData(fid,'object',obj,' fieldname','rho_water','format','Double');104 WriteData(fid,'object',obj,' fieldname','rho_freshwater','format','Double');105 WriteData(fid,'object',obj,' fieldname','mu_water','format','Double');106 WriteData(fid,'object',obj,' fieldname','heatcapacity','format','Double');107 WriteData(fid,'object',obj,' fieldname','latentheat','format','Double');108 WriteData(fid,'object',obj,' fieldname','thermalconductivity','format','Double');109 WriteData(fid,'object',obj,' fieldname','meltingpoint','format','Double');110 WriteData(fid,'object',obj,' fieldname','beta','format','Double');111 WriteData(fid,'object',obj,' fieldname','mixed_layer_capacity','format','Double');112 WriteData(fid,'object',obj,' fieldname','thermal_exchange_velocity','format','Double');113 WriteData(fid,'object',obj,' fieldname','rheology_B','format','DoubleMat','mattype',1);114 WriteData(fid,'object',obj,' fieldname','rheology_n','format','DoubleMat','mattype',2);115 WriteData(fid,'object',obj,' fieldname','rheology_Z','format','DoubleMat','mattype',1);99 WriteData(fid,'enum',MaterialsEnum(),'data',MaticeEnum(),'format','Integer'); 100 WriteData(fid,'object',obj,'class','materials','fieldname','rho_ice','format','Double'); 101 WriteData(fid,'object',obj,'class','materials','fieldname','rho_water','format','Double'); 102 WriteData(fid,'object',obj,'class','materials','fieldname','rho_freshwater','format','Double'); 103 WriteData(fid,'object',obj,'class','materials','fieldname','mu_water','format','Double'); 104 WriteData(fid,'object',obj,'class','materials','fieldname','heatcapacity','format','Double'); 105 WriteData(fid,'object',obj,'class','materials','fieldname','latentheat','format','Double'); 106 WriteData(fid,'object',obj,'class','materials','fieldname','thermalconductivity','format','Double'); 107 WriteData(fid,'object',obj,'class','materials','fieldname','meltingpoint','format','Double'); 108 WriteData(fid,'object',obj,'class','materials','fieldname','beta','format','Double'); 109 WriteData(fid,'object',obj,'class','materials','fieldname','mixed_layer_capacity','format','Double'); 110 WriteData(fid,'object',obj,'class','materials','fieldname','thermal_exchange_velocity','format','Double'); 111 WriteData(fid,'object',obj,'class','materials','fieldname','rheology_B','format','DoubleMat','mattype',1); 112 WriteData(fid,'object',obj,'class','materials','fieldname','rheology_n','format','DoubleMat','mattype',2); 116 113 WriteData(fid,'data',StringToEnum(obj.rheology_law),'enum',MaterialsRheologyLawEnum(),'format','Integer'); 117 114 end % }}} -
issm/trunk-jpl/src/m/classes/model/model.m
r13119 r13131 168 168 md.materials.rheology_B=DepthAverage(md,md.materials.rheology_B); 169 169 md.materials.rheology_n=project2d(md,md.materials.rheology_n,1); 170 md.materials.rheology_Z=DepthAverage(md,md.materials.rheology_Z); 170 if isa(md.materials,'matdamageice') 171 md.materials.rheology_Z=DepthAverage(md,md.materials.rheology_Z); 172 end 171 173 172 174 %special for thermal modeling: … … 717 719 md.materials.rheology_B=project3d(md,'vector',md.materials.rheology_B,'type','node'); 718 720 md.materials.rheology_n=project3d(md,'vector',md.materials.rheology_n,'type','element'); 719 md.materials.rheology_Z=project3d(md,'vector',md.materials.rheology_Z,'type','node'); 721 if isa(md.materials,'matdamageice') 722 md.materials.rheology_Z=project3d(md,'vector',md.materials.rheology_Z,'type','node'); 723 end 720 724 721 725 %parameters … … 831 835 if isfield(structmd,'B'), md.materials.rheology_B=structmd.B; end 832 836 if isfield(structmd,'n'), md.materials.rheology_n=structmd.n; end 833 if isfield(structmd,'Z'), md.materials.rheology_Z=structmd.Z; end834 837 if isfield(structmd,'rheology_B'), md.materials.rheology_B=structmd.rheology_B; end 835 838 if isfield(structmd,'rheology_n'), md.materials.rheology_n=structmd.rheology_n; end 836 if isfield(structmd,'rheology_Z'), md.materials.rheology_Z=structmd.rheology_Z; end837 839 if isfield(structmd,'elementoniceshelf'), md.mask.elementonfloatingice=structmd.elementoniceshelf; end 838 840 if isfield(structmd,'elementonicesheet'), md.mask.elementongroundedice=structmd.elementonicesheet; end … … 1044 1046 md.timestepping = timestepping(); 1045 1047 md.groundingline = groundingline(); 1046 md.materials = mat erials();1048 md.materials = matice(); 1047 1049 md.flowequation = flowequation(); 1048 1050 md.debug = debug();
Note:
See TracChangeset
for help on using the changeset viewer.