source: issm/trunk-jpl/src/m/classes/frictionhydro.m@ 18775

Last change on this file since 18775 was 18775, checked in by bdef, 10 years ago

Updating model to take into account new friction law's, adding md.calving creation if needed

File size: 1.6 KB
Line 
1%FRICTIONWEERTMAN class definition
2%
3% Usage:
4% friction=frictionhydro();
5
6classdef frictionhydro
7 properties (SetAccess=public)
8 q = NaN;
9 C = NaN;
10 As = NaN;
11 end
12 methods
13 function obj = frictionhydro(varargin) % {{{
14 switch nargin
15 case 0
16 obj=setdefaultparameters(obj);
17 otherwise
18 error('constructor not supported');
19 end
20 end % }}}
21 function obj = setdefaultparameters(obj) % {{{
22
23 end % }}}
24 function md = checkconsistency(obj,md,solution,analyses) % {{{
25
26 %Early return
27 if ~ismember(StressbalanceAnalysisEnum(),analyses) & ~ismember(ThermalAnalysisEnum(),analyses), return; end
28 md = checkfield(md,'fieldname','friction.q','NaN',1,'size',[md.mesh.numberofelements 1]);
29 md = checkfield(md,'fieldname','friction.C','NaN',1,'size',[md.mesh.numberofelements 1]);
30 md = checkfield(md,'fieldname','friction.As','NaN',1,'size',[md.mesh.numberofelements 1]);
31 end % }}}
32 function disp(obj) % {{{
33 disp(sprintf('Effective Pressure based friction law described in Gagliardini 2007'));
34 fielddisplay(obj,'q','friction law exponent q>=1');
35 fielddisplay(obj,'C','friction law max value [SI]');
36 fielddisplay(obj,'As','Sliding Parameter without cavitation [m Pa^-n s^-1]');
37 end % }}}
38 function marshall(obj,md,fid) % {{{
39 WriteData(fid,'enum',FrictionLawEnum,'data',3,'format','Integer');
40 WriteData(fid,'class','friction','object',obj,'fieldname','q','format','DoubleMat','mattype',2);
41 WriteData(fid,'class','friction','object',obj,'fieldname','C','format','DoubleMat','mattype',2);
42 WriteData(fid,'class','friction','object',obj,'fieldname','As','format','DoubleMat','mattype',2);
43 end % }}}
44 end
45end
Note: See TracBrowser for help on using the repository browser.