source: issm/trunk-jpl/src/m/classes/hydrologytws.m@ 26047

Last change on this file since 26047 was 26047, checked in by Eric.Larour, 4 years ago

CHG: huge commit on solid earth capability rewrite. Complete cleanup of the sea level core.
New mass transport capabilities for ocean and tws. No more giacore. GiaIvins folded into
the sea level core. Debugging of Materials.

File size: 2.0 KB
Line 
1%HYDROLOGYTWS class definition
2%
3% Usage:
4% hydrologytws=hydrologytws();
5
6classdef hydrologytws
7 properties (SetAccess=public)
8 spcwatercolumn = NaN;
9 requested_outputs = {};
10 end
11 methods
12 function self = extrude(self,md) % {{{
13 end % }}}
14 function self = hydrologytws(varargin) % {{{
15 switch nargin
16 case 0
17 self=setdefaultparameters(self);
18 case 1
19 self=structtoobj(self,varargin{1});
20 otherwise
21 error('constructor not supported');
22 end
23 end % }}}
24 function list = defaultoutputs(self,md) % {{{
25 list = {''};
26 end % }}}
27
28 function self = setdefaultparameters(self) % {{{
29 self.requested_outputs = {'default'};
30 end % }}}
31 function md = checkconsistency(self,md,solution,analyses) % {{{
32
33 %Early return
34 if ~ismember('HydrologyTwsAnalysis',analyses)
35 return;
36 end
37 md = checkfield(md,'fieldname','hydrology.spcwatercolumn','Inf',1,'timeseries',1);
38 end % }}}
39 function disp(self) % {{{
40 disp(sprintf(' hydrologytws solution parameters:'));
41 fielddisplay(self,'spcwatercolumn','water thickness constraints (NaN means no constraint) [m]');
42 fielddisplay(self,'requested_outputs','additional outputs requested');
43
44 end % }}}
45 function marshall(self,prefix,md,fid) % {{{
46 WriteData(fid,prefix,'name','md.hydrology.model','data',2,'format','Integer');
47 WriteData(fid,prefix,'object',self,'fieldname','spcwatercolumn','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1,'yts',md.constants.yts);
48 outputs = self.requested_outputs;
49 pos = find(ismember(outputs,'default'));
50 if ~isempty(pos),
51 outputs(pos) = []; %remove 'default' from outputs
52 outputs = [outputs defaultoutputs(self,md)]; %add defaults
53 end
54 WriteData(fid,prefix,'data',outputs,'name','md.hydrology.requested_outputs','format','StringArray');
55 end % }}}
56 function savemodeljs(self,fid,modelname) % {{{
57
58 writejs1Darray(fid,[modelname '.hydrology.spcwatercolumn'],self.spcwatercolumn);
59
60 end % }}}
61 end
62end
63
Note: See TracBrowser for help on using the repository browser.