Ice Sheet System Model  4.18
Code documentation
cores.h
Go to the documentation of this file.
1 /*
2  * cores.h:
3  */
4 
5 #ifndef _CORES_H_
6 #define _CORES_H_
7 
8 /*forward declarations: */
9 class FemModel;
10 class Parameters;
11 class SealevelMasks;
12 template <class doubletype> class Matrix;
13 template <class doubletype> class Vector;
14 
15 #include "../shared/io/Comm/IssmComm.h"
16 #include "../shared/Numerics/types.h"
17 
18 /*cores: */
66 void GetStericRate(Vector<IssmDouble> ** psteric_rate_g, FemModel* femmodel);
67 void GetDynamicRate(Vector<IssmDouble> ** pdynamic_rate_g, FemModel* femmodel);
68 
69 //optimization
70 int GradJSearch(IssmDouble* search_vector,FemModel* femmodel,int step);
71 
72 //diverse
73 void ProcessArguments(int* solution,char** pbinname,char** poutbinname,char** ptoolkitsname,char** plockname,char** prestartname, char** prootpath,int argc,char **argv);
74 void WriteLockFile(char* filename);
75 void ResetBoundaryConditions(FemModel* femmodel, int analysis_type);
76 void PrintBanner(void);
77 void TransferForcing(FemModel* femmodel,int forcingenum);
78 void TransferSealevel(FemModel* femmodel,int forcingenum);
80 void slrconvergence(bool* pconverged, Vector<IssmDouble>* RSLg,Vector<IssmDouble>* RSLg_old,IssmDouble eps_rel,IssmDouble eps_abs);
81 
82 //solution configuration
83 void CorePointerFromSolutionEnum(void (**psolutioncore)(FemModel*),Parameters* parameters,int solutiontype);
84 void WrapperCorePointerFromSolutionEnum(void (**psolutioncore)(FemModel*),Parameters* parameters,int solutiontype,bool nodakotacore=false);
85 void AdjointCorePointerFromSolutionEnum(void (**padjointcore)(FemModel*),int solutiontype);
86 
87 #endif
Matrix
Definition: Matrix.h:27
sealevelrise_core_viscous
void sealevelrise_core_viscous(Vector< IssmDouble > **pU_gia, Vector< IssmDouble > **pN_gia, FemModel *femmodel, Vector< IssmDouble > *RSLg)
Definition: sealevelchange_core.cpp:628
depthaverage_core
void depthaverage_core(FemModel *femmodel)
Definition: depthaverage_core.cpp:12
movingfront_core
void movingfront_core(FemModel *femmodel)
Definition: movingfront_core.cpp:12
GetDynamicRate
void GetDynamicRate(Vector< IssmDouble > **pdynamic_rate_g, FemModel *femmodel)
Definition: sealevelchange_core.cpp:664
IssmDouble
double IssmDouble
Definition: types.h:37
extrudefrombase_core
void extrudefrombase_core(FemModel *femmodel)
Definition: extrudefrombase_core.cpp:12
dummy_core
void dummy_core(FemModel *femmodel)
Definition: dummy_core.cpp:7
transient_core
void transient_core(FemModel *femmodel)
Definition: transient_core.cpp:19
thermal_core
void thermal_core(FemModel *femmodel)
Definition: thermal_core.cpp:13
Parameters
Declaration of Parameters class.
Definition: Parameters.h:18
love_core
void love_core(FemModel *femmodel)
Definition: love_core.cpp:11
adjointstressbalance_core
void adjointstressbalance_core(FemModel *femmodel)
Definition: adjointstressbalance_core.cpp:12
controladm1qn3_core
void controladm1qn3_core(FemModel *femmodel)
Definition: controladm1qn3_core.cpp:657
sealevelrise_core_eustatic
Vector< IssmDouble > * sealevelrise_core_eustatic(FemModel *femmodel, SealevelMasks *mask, IssmDouble *poceanarea)
Definition: sealevelchange_core.cpp:404
bmb_core
void bmb_core(FemModel *femmodel)
Definition: bmb_core.cpp:12
bedslope_core
void bedslope_core(FemModel *femmodel)
Definition: bedslope_core.cpp:12
esa_core
void esa_core(FemModel *femmodel)
Definition: esa_core.cpp:12
grd_core
void grd_core(FemModel *femmodel)
Definition: sealevelchange_core.cpp:84
meshdeformation_core
void meshdeformation_core(FemModel *femmodel)
sealevelrise_core_noneustatic
Vector< IssmDouble > * sealevelrise_core_noneustatic(FemModel *femmodel, SealevelMasks *masks, Vector< IssmDouble > *RSLg_eustatic, IssmDouble oceanarea)
Definition: sealevelchange_core.cpp:444
steadystate_core
void steadystate_core(FemModel *femmodel)
Definition: steadystate_core.cpp:20
balancethickness_core
void balancethickness_core(FemModel *femmodel)
Definition: balancethickness_core.cpp:12
ad_core
void ad_core(FemModel *femmodel)
Definition: ad_core.cpp:24
AdjointCorePointerFromSolutionEnum
void AdjointCorePointerFromSolutionEnum(void(**padjointcore)(FemModel *), int solutiontype)
Definition: AdjointCorePointerFromSolutionEnum.cpp:18
ResetBoundaryConditions
void ResetBoundaryConditions(FemModel *femmodel, int analysis_type)
Definition: ResetBoundaryConditions.cpp:9
sealevelrise_core_elastic
void sealevelrise_core_elastic(Vector< IssmDouble > **pU_radial, Vector< IssmDouble > **pU_north, Vector< IssmDouble > **pU_east, FemModel *femmodel, Vector< IssmDouble > *RSLg, SealevelMasks *masks)
Definition: sealevelchange_core.cpp:572
hydrology_core
void hydrology_core(FemModel *femmodel)
Definition: hydrology_core.cpp:12
PrintBanner
void PrintBanner(void)
sealevelrise_core_geometry
void sealevelrise_core_geometry(FemModel *femmodel)
Definition: sealevelchange_core.cpp:351
sealevelchange_core
void sealevelchange_core(FemModel *femmodel)
Definition: sealevelchange_core.cpp:17
extrudefromtop_core
void extrudefromtop_core(FemModel *femmodel)
Definition: extrudefromtop_core.cpp:12
CorePointerFromSolutionEnum
void CorePointerFromSolutionEnum(void(**psolutioncore)(FemModel *), Parameters *parameters, int solutiontype)
Definition: CorePointerFromSolutionEnum.cpp:18
smb_core
void smb_core(FemModel *femmodel)
Definition: smb_core.cpp:12
EarthMassTransport
void EarthMassTransport(FemModel *femmodel)
Definition: sealevelchange_core.cpp:983
balancevelocity_core
void balancevelocity_core(FemModel *femmodel)
Definition: balancevelocity_core.cpp:12
gia_core
void gia_core(FemModel *femmodel)
Definition: gia_core.cpp:13
adjointbalancethickness_core
void adjointbalancethickness_core(FemModel *femmodel)
Definition: adjointbalancethickness_core.cpp:12
TransferForcing
void TransferForcing(FemModel *femmodel, int forcingenum)
Definition: sealevelchange_core.cpp:752
WrapperCorePointerFromSolutionEnum
void WrapperCorePointerFromSolutionEnum(void(**psolutioncore)(FemModel *), Parameters *parameters, int solutiontype, bool nodakotacore=false)
Definition: WrapperCorePointerFromSolutionEnum.cpp:17
adjointbalancethickness2_core
void adjointbalancethickness2_core(FemModel *femmodel)
Definition: adjointbalancethickness2_core.cpp:12
masstransport_core
void masstransport_core(FemModel *femmodel)
Definition: masstransport_core.cpp:12
control_core
void control_core(FemModel *femmodel)
Definition: control_core.cpp:22
ProcessArguments
void ProcessArguments(int *solution, char **pbinname, char **poutbinname, char **ptoolkitsname, char **plockname, char **prestartname, char **prootpath, int argc, char **argv)
Definition: ProcessArguments.cpp:10
surfaceslope_core
void surfaceslope_core(FemModel *femmodel)
Definition: surfaceslope_core.cpp:12
dakota_core
void dakota_core(FemModel *femmodel)
Definition: dakota_core.cpp:313
controltao_core
void controltao_core(FemModel *femmodel)
Definition: controltao_core.cpp:213
FemModel
Definition: FemModel.h:31
controlvalidation_core
void controlvalidation_core(FemModel *femmodel)
Definition: controlvalidation_core.cpp:155
WriteLockFile
void WriteLockFile(char *filename)
Definition: WriteLockFile.cpp:10
slrconvergence
void slrconvergence(bool *pconverged, Vector< IssmDouble > *RSLg, Vector< IssmDouble > *RSLg_old, IssmDouble eps_rel, IssmDouble eps_abs)
Definition: sealevelchange_core.cpp:1031
TransferSealevel
void TransferSealevel(FemModel *femmodel, int forcingenum)
Definition: sealevelchange_core.cpp:879
sealevelrise_core_masks
SealevelMasks * sealevelrise_core_masks(FemModel *femmodel)
Definition: sealevelchange_core.cpp:336
GetStericRate
void GetStericRate(Vector< IssmDouble > **psteric_rate_g, FemModel *femmodel)
Definition: sealevelchange_core.cpp:707
dynstr_core
void dynstr_core(FemModel *femmodel)
Definition: sealevelchange_core.cpp:259
damage_core
void damage_core(FemModel *femmodel)
Definition: damage_core.cpp:12
levelsetfunctionslope_core
void levelsetfunctionslope_core(FemModel *femmodel)
Definition: levelsetfunctionslope_core.cpp:12
GradJSearch
int GradJSearch(IssmDouble *search_vector, FemModel *femmodel, int step)
stressbalance_core
void stressbalance_core(FemModel *femmodel)
Definition: stressbalance_core.cpp:13
slopecompute_core
void slopecompute_core(FemModel *femmodel)
adgradient_core
void adgradient_core(FemModel *femmodel)
Definition: adgradient_core.cpp:22
Vector
Definition: Vector.h:25
objectivefunction
IssmDouble objectivefunction(IssmDouble search_scalar, FemModel *femmodel)
controlm1qn3_core
void controlm1qn3_core(FemModel *femmodel)
Definition: controlm1qn3_core.cpp:304
balancethickness2_core
void balancethickness2_core(FemModel *femmodel)
Definition: balancethickness2_core.cpp:12
SealevelMasks
Definition: SealevelMasks.h:10
sealevelrise_diagnostics
void sealevelrise_diagnostics(FemModel *femmodel, Vector< IssmDouble > *RSLg)
Definition: sealevelchange_core.cpp:658
femmodel
FemModel * femmodel
Definition: esmfbinders.cpp:16