source: issm/trunk-jpl/src/m/classes/frictionweertmantemp.m@ 19040

Last change on this file since 19040 was 19040, checked in by Mathieu Morlighem, 10 years ago

CHG: renmaned obj -> self to look like python

File size: 1.7 KB
Line 
1%FRICTIONWEERTMAN class definition
2%
3% Usage:
4% frictionweertmantemp=frictionweertmantemp();
5
6classdef frictionweertmantemp
7 properties (SetAccess=public)
8 gamma = 0;
9 C = NaN;
10 m = NaN;
11 end
12 methods
13 function self = frictionweertmantemp(varargin) % {{{
14 switch nargin
15 case 0
16 self=setdefaultparameters(self);
17 otherwise
18 error('constructor not supported');
19 end
20 end % }}}
21 function self = setdefaultparameters(self) % {{{
22
23 end % }}}
24 function md = checkconsistency(self,md,solution,analyses) % {{{
25
26 %Early return
27 if ~ismember(StressbalanceAnalysisEnum(),analyses) & ~ismember(ThermalAnalysisEnum(),analyses), return; end
28 md = checkfield(md,'fieldname','friction.C','timeseries',1,'NaN',1);
29 md = checkfield(md,'fieldname','friction.m','NaN',1,'size',[md.mesh.numberofelements 1]);
30 end % }}}
31 function disp(self) % {{{
32 disp('Weertman sliding law parameters:');
33 disp(' Sigma_b = C^(-1/m) * |u_b|^(1/m-1) u_b * 1/f(T)');
34 disp(' ');
35 fielddisplay(self,'gamma','submelt sliding parameter f(T) = exp((T-Tpmp)/gamma)');
36 fielddisplay(self,'C','friction coefficient [SI]');
37 fielddisplay(self,'m','m exponent');
38 end % }}}
39 function marshall(self,md,fid) % {{{
40 yts=365.0*24.0*3600.0;
41
42 WriteData(fid,'enum',FrictionLawEnum,'data',6,'format','Integer');
43 WriteData(fid,'class','friction','object',self,'fieldname','gamma','format','Double');
44 WriteData(fid,'class','friction','object',self,'fieldname','C','format','DoubleMat','mattype',1,'timeserieslength',md.mesh.numberofvertices+1);
45 WriteData(fid,'class','friction','object',self,'fieldname','m','format','DoubleMat','mattype',2);
46
47
48 end % }}}
49 end
50end
Note: See TracBrowser for help on using the repository browser.