source: issm/trunk/src/m/materials/nye.m@ 26744

Last change on this file since 26744 was 26744, checked in by Mathieu Morlighem, 3 years ago

merged trunk-jpl and trunk for revision 26742

File size: 1.6 KB
RevLine 
[24060]1function rigidity = nye(temperature,ice_type)
[24072]2%NYE - Nye viscosity coefficient
3%
4% Compute rigidity of ice (either CO2 or H2O) for a given temperature
[24101]5% rigidity (in s^(1/n)Pa) is the flow law parameter in the flow law
6% sigma=B*e(1/n) (Nye, p2000). temperature is in Kelvin degrees
[24072]7%
8% Usage:
9% rigidity=nye(temperature,ice_type) % ice_type = 1: CO2 ice // ice_type = 2: H2O ice
[24101]10
11 % Beyond-melting-point cases
12 warning OFF BACKTRACE
13 if (ice_type==1)
14 if (any(temperature>200&temperature<220))
[26744]15 warning('nye.m: CO2 ICE - POSSIBLE MELTING. Some temperature values are between 200K and 220K.\nLook at indexes: %s', mat2str(find(temperature>200 & temperature<220))');
[24101]16 end
17 if (any(temperature>=220))
[26744]18 warning('nye.m: CO2 ICE - GUARANTEED MELTING. Some temperature values are beyond 220K.\nLook at indexes: %s', mat2str(find(temperature>=220))');
[24101]19 end
20 elseif ((ice_type==2)&&(any(temperature>273.15)))
[26744]21 warning('nye.m: H2O ICE - GUARANTEED MELTING. Some temperature values are beyond 273.15K.\nLook at indexes: %s', mat2str(find(temperature>273.15))');
[24060]22 end
23
[24101]24 % Coefficients
25 Rg=8.3144598; % J mol^-1 K^-1
[24060]26
[24101]27 if(ice_type==1) % CO2 ice
[25836]28 A_const = 10^(13.0); % s^-1 MPa
29 Q = 66900; % J mol^-1
30 n = 8; % Glen's exponent
[24072]31 elseif(ice_type==2) % H2O ice
[24101]32 A_const = 9e4; % s^-1 MPa
33 Q = 60000; % J mol^-1
34 n = 3; % Glen's exponent
[24072]35 else
[24101]36 error('Ice type not supported');
[24060]37 end
38
[24101]39 % Arrhenius Law
40 A=A_const*exp(-Q./(temperature*Rg)); % s^-1 MPa
41 rigidity=A.^(-1/n)*1e6; % s^(1/n) Pa
[24060]42
43end
Note: See TracBrowser for help on using the repository browser.