Ice Sheet System Model  4.18
Code documentation
elements.h
Go to the documentation of this file.
1 
5 #ifndef _SHARED_ELEMENTS_H_
6 #define _SHARED_ELEMENTS_H_
7 
8 #include "../Numerics/types.h"
9 
10 IssmDouble Cuffey(IssmDouble temperature);
11 IssmDouble BuddJacka(IssmDouble temperature);
12 IssmDouble CuffeyTemperate(IssmDouble temperature, IssmDouble waterfraction, IssmDouble stressexp);
13 IssmDouble Paterson(IssmDouble temperature);
15 IssmDouble NyeH2O(IssmDouble temperature);
16 IssmDouble NyeCO2(IssmDouble temperature);
17 IssmDouble LliboutryDuval(IssmDouble enthalpy, IssmDouble pressure, IssmDouble n, IssmDouble betaCC, IssmDouble referencetemperature, IssmDouble heatcapacity, IssmDouble latentheat);
18 // IssmDouble LliboutryDuval(IssmDouble temperature, IssmDouble waterfraction, IssmDouble depth,IssmDouble n);
19 IssmDouble EstarLambdaS(IssmDouble epseff, IssmDouble epsprime_norm);
22 IssmDouble PddSurfaceMassBalance(IssmDouble* monthlytemperatures, IssmDouble* monthlyprec,
23  IssmDouble* pdds, IssmDouble* pds, IssmDouble* melt, IssmDouble* accu, IssmDouble signorm,
25  IssmDouble s0p, IssmDouble rlaps, IssmDouble rlapslgm,
26  IssmDouble TdiffTime,IssmDouble sealevTime,IssmDouble pddsnowfac,IssmDouble pddicefac,
27  IssmDouble rho_water, IssmDouble rho_ice);
28 IssmDouble PddSurfaceMassBalanceSicopolis(IssmDouble* monthlytemperatures, IssmDouble* monthlyprec,
29  IssmDouble* melt, IssmDouble* accu, IssmDouble* melt_star, IssmDouble* t_ampl, IssmDouble* p_ampl,
30  IssmDouble yts, IssmDouble s, IssmDouble desfac,IssmDouble s0t,
31  IssmDouble s0p, IssmDouble rlaps, IssmDouble rho_water, IssmDouble rho_ice);
32 void ComputeDelta18oTemperaturePrecipitation(IssmDouble Delta18oSurfacePresent, IssmDouble Delta18oSurfaceLgm, IssmDouble Delta18oSurfaceTime,
33  IssmDouble Delta18oPresent, IssmDouble Delta18oLgm, IssmDouble Delta18oTime,
34  IssmDouble* PrecipitationsPresentday,
35  IssmDouble* TemperaturesLgm, IssmDouble* TemperaturesPresentday,
36  IssmDouble* monthlytemperaturesout, IssmDouble* monthlyprecout);
38  IssmDouble* PrecipitationsLgm,IssmDouble* PrecipitationsPresentday,
39  IssmDouble* TemperaturesLgm, IssmDouble* TemperaturesPresentday,
40  IssmDouble* monthlytemperaturesout, IssmDouble* monthlyprecout);
41 void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018,IssmDouble dpermil,bool isTemperatureScaled,
42  bool isPrecipScaled, IssmDouble f, IssmDouble* PrecipitationPresentday,IssmDouble* TemperaturePresentday,
43  IssmDouble* PrecipitationReconstructed,IssmDouble* TemperatureReconstructed, IssmDouble* monthlytemperaturesout,
44  IssmDouble* monthlyprecout);
47 
48 /*Enthalphy*/
49 void EnthalpyToThermal(IssmDouble* ptemperature,IssmDouble* pwaterfraction,IssmDouble enthalpy,IssmDouble pressure);
50 
51 /*Print arrays*/
52 void printarray(IssmPDouble* array,int lines,int cols=1);
53 #if _HAVE_AD_ && !defined(_WRAPPERS_)
54 void printarray(IssmDouble* array,int lines,int cols=1);
55 #endif
56 void printarray_matlab(const char* filename,int* array,int lines,int cols=1);
57 void printarray(int* array,int lines,int cols=1);
58 void printarray(bool* array,int lines,int cols=1);
59 void printsparsity(IssmPDouble* array,int lines,int cols=1);
60 void printbinary(int n);
61 #endif //ifndef _SHARED_ELEMENTS_H_
melt
void melt(IssmDouble *pM, IssmDouble *pMs, IssmDouble *pR, IssmDouble *pmAdd, IssmDouble *pdz_add, IssmDouble **pT, IssmDouble **pd, IssmDouble **pdz, IssmDouble **pW, IssmDouble **pa, IssmDouble **pre, IssmDouble **pgdn, IssmDouble **pgsp, int *pn, IssmDouble dzMin, IssmDouble zMax, IssmDouble zMin, IssmDouble zTop, IssmDouble zY, IssmDouble dIce, int sid)
Definition: Gembx.cpp:1374
printarray_matlab
void printarray_matlab(const char *filename, int *array, int lines, int cols=1)
Definition: PrintArrays.cpp:52
Cuffey
IssmDouble Cuffey(IssmDouble temperature)
Definition: Cuffey.cpp:11
DrainageFunctionWaterfraction
IssmDouble DrainageFunctionWaterfraction(IssmDouble waterfraction, IssmDouble dt=0.)
Definition: DrainageFunctionWaterfraction.cpp:9
Paterson
IssmDouble Paterson(IssmDouble temperature)
Definition: Paterson.cpp:11
EstarLambdaS
IssmDouble EstarLambdaS(IssmDouble epseff, IssmDouble epsprime_norm)
Definition: EstarComponents.cpp:118
IssmDouble
double IssmDouble
Definition: types.h:37
EstarOmega
void EstarOmega(IssmDouble *omega, IssmDouble vx, IssmDouble vy, IssmDouble vz, IssmDouble vmag, IssmDouble *dvx, IssmDouble *dvy, IssmDouble *dvz, IssmDouble *dvmag)
Definition: EstarComponents.cpp:72
EstarStrainrateQuantities
void EstarStrainrateQuantities(IssmDouble *pepsprime_norm, IssmDouble vx, IssmDouble vy, IssmDouble vz, IssmDouble vmag, IssmDouble *dvx, IssmDouble *dvy, IssmDouble *dvz, IssmDouble *dvmag)
Definition: EstarComponents.cpp:5
StressIntensityIntegralWeight
IssmDouble StressIntensityIntegralWeight(IssmDouble depth, IssmDouble water_depth, IssmDouble thickness)
Definition: StressIntensityIntegralWeight.cpp:9
PddSurfaceMassBalance
IssmDouble PddSurfaceMassBalance(IssmDouble *monthlytemperatures, IssmDouble *monthlyprec, IssmDouble *pdds, IssmDouble *pds, IssmDouble *melt, IssmDouble *accu, IssmDouble signorm, IssmDouble yts, IssmDouble h, IssmDouble s, IssmDouble desfac, IssmDouble s0t, IssmDouble s0p, IssmDouble rlaps, IssmDouble rlapslgm, IssmDouble TdiffTime, IssmDouble sealevTime, IssmDouble pddsnowfac, IssmDouble pddicefac, IssmDouble rho_water, IssmDouble rho_ice)
Definition: PddSurfaceMassBalance.cpp:11
printbinary
void printbinary(int n)
Definition: PrintArrays.cpp:76
ComputeD18OTemperaturePrecipitationFromPD
void ComputeD18OTemperaturePrecipitationFromPD(IssmDouble d018, IssmDouble dpermil, bool isTemperatureScaled, bool isPrecipScaled, IssmDouble f, IssmDouble *PrecipitationPresentday, IssmDouble *TemperaturePresentday, IssmDouble *PrecipitationReconstructed, IssmDouble *TemperatureReconstructed, IssmDouble *monthlytemperaturesout, IssmDouble *monthlyprecout)
Definition: ComputeD18OTemperaturePrecipitationFromPD.cpp:10
NyeCO2
IssmDouble NyeCO2(IssmDouble temperature)
Definition: NyeCO2.cpp:11
Arrhenius
IssmDouble Arrhenius(IssmDouble temperature, IssmDouble depth, IssmDouble n)
Definition: Arrhenius.cpp:9
BuddJacka
IssmDouble BuddJacka(IssmDouble temperature)
Definition: BuddJacka.cpp:10
PddSurfaceMassBalanceSicopolis
IssmDouble PddSurfaceMassBalanceSicopolis(IssmDouble *monthlytemperatures, IssmDouble *monthlyprec, IssmDouble *melt, IssmDouble *accu, IssmDouble *melt_star, IssmDouble *t_ampl, IssmDouble *p_ampl, IssmDouble yts, IssmDouble s, IssmDouble desfac, IssmDouble s0t, IssmDouble s0p, IssmDouble rlaps, IssmDouble rho_water, IssmDouble rho_ice)
Definition: PddSurfaceMassBalanceSicopolis.cpp:10
NyeH2O
IssmDouble NyeH2O(IssmDouble temperature)
Definition: NyeH2O.cpp:11
ComputeDelta18oTemperaturePrecipitation
void ComputeDelta18oTemperaturePrecipitation(IssmDouble Delta18oSurfacePresent, IssmDouble Delta18oSurfaceLgm, IssmDouble Delta18oSurfaceTime, IssmDouble Delta18oPresent, IssmDouble Delta18oLgm, IssmDouble Delta18oTime, IssmDouble *PrecipitationsPresentday, IssmDouble *TemperaturesLgm, IssmDouble *TemperaturesPresentday, IssmDouble *monthlytemperaturesout, IssmDouble *monthlyprecout)
Definition: ComputeDelta18oTemperaturePrecipitation.cpp:10
LliboutryDuval
IssmDouble LliboutryDuval(IssmDouble enthalpy, IssmDouble pressure, IssmDouble n, IssmDouble betaCC, IssmDouble referencetemperature, IssmDouble heatcapacity, IssmDouble latentheat)
Definition: LliboutryDuval.cpp:10
printarray
void printarray(IssmPDouble *array, int lines, int cols=1)
Definition: PrintArrays.cpp:6
CuffeyTemperate
IssmDouble CuffeyTemperate(IssmDouble temperature, IssmDouble waterfraction, IssmDouble stressexp)
Definition: CuffeyTemperate.cpp:11
ComputeMungsmTemperaturePrecipitation
void ComputeMungsmTemperaturePrecipitation(IssmDouble TdiffTime, IssmDouble PfacTime, IssmDouble *PrecipitationsLgm, IssmDouble *PrecipitationsPresentday, IssmDouble *TemperaturesLgm, IssmDouble *TemperaturesPresentday, IssmDouble *monthlytemperaturesout, IssmDouble *monthlyprecout)
Definition: ComputeMungsmTemperaturePrecipitation.cpp:11
IssmPDouble
IssmDouble IssmPDouble
Definition: types.h:38
EnthalpyToThermal
void EnthalpyToThermal(IssmDouble *ptemperature, IssmDouble *pwaterfraction, IssmDouble enthalpy, IssmDouble pressure)
printsparsity
void printsparsity(IssmPDouble *array, int lines, int cols=1)
Definition: PrintArrays.cpp:26