Ice Sheet System Model - NASA
Transcript of Ice Sheet System Model - NASA
J E T P R O P U L S I O N L A B O R A T O R Y
ISSM Workshop 2011
Ice Sheet System ModelFrom Science to Software
Eric LAROUR1, Eric RIGNOT1,3, Mathieu MORLIGHEM1,2, HélèneSEROUSSI1,2 Chris BORSTAD1, Feras HABBAL1,3, Daria HALKIDES1,4,Behnaz KHAKBAZ1, John SCHIERMEIER1, Nicole SCHLEGEL1
1Jet Propulsion Laboratory - California Institute of Technology2Laboratoire MSSMat, École Centrale Paris, France3University of California, Irvine4Joint Institute for Regional Earth System Science & Engineering, UCLA
December 2011 c©Copyright 2011. All rights reserved
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
Outline
1 Introduction
2 Engineering Drivers
3 Technology
1/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
Introduction
• Why ice sheet modeling at NASA/JPL?→ NASA missions (InSAR, ICESat, GRACE, EOS)→ NASA science mission to planet Earth to observe, understand and predict
changes in the Earth system in response to human influence
• IPCC AR4 sea level rise in the 21st century excludes rapid changesfrom ice sheets
"What’s the use of having developed a science well enough to makepredictions, if, in the end, all we’re willing to do is stand around andwait for them to come true?" (Prof. Sherry Rowland, Nobel Prize inChemistry 1995).
Root cause of the failure of numerical models: lack of observations toevaluate their physical skills and time scales.
2/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
Engineering driversInverse methods
Infer unknown parameters (basal friction, ice rigidity) using an ice flowmodel to best-fit InSAR surface velocities:
J=∫∫
Surface
12 [(u−uobs)
2+(v−vobs)2]dxdy
3/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
Engineering driversHigh resolution, large scale simulations
Model whole continental ice sheets at high resolution (1 km horizontal,10–20 layers vertically)
4/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
Engineering driversHigher-order modeling
5/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
TechnologyFinite Element Method
The Finite Element Method (FEM) seamlessly integrates fully unstructuredmeshes, multi-physics and anisotropic adaptivity.
6/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
TechnologyParallel computing
• ISSM was designed as a parallel architecture with serial capabilities,instead of the opposite. The goal is to make parallel computing aseasy as possible.
• ISSM relies on PETSc and MPICH to run on any type of parallelplatform, be it shared or distributed clusters, as well as multi-coredesktops.
• Scaling is good for the entire architecture, with extensive work beingcarried out to apply efficient parallel iterative solvers.
7/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
TechnologyMATLAB
• ISSM is hosted in MATLAB, a widely-used multi-purpose platform• ISSM is encapsulated within mex modules (MATLAB routines)• Pre and post-processing done in MATLAB• Serial runs carried out within MATLAB• MATLAB layer can be removed to compile a parallel executable for parallel
computations• For computationally challenging processing routines, multi-threading
seamlessly integrated within ISSM
• Example of pre-processing of thickness dataset:
>> disp(’ reading thickness and bedrock’);>> load(thickness);>> md.geometry.thickness=InterpFromMeshToMesh2d(index,x,y,thickness,md.mesh.x,md.mesh.y);>> md.geometry.bed=InterpFromMeshToMesh2d(index,x,y,bed,md.mesh.x,md.mesh.y);
8/9
ISSM
Larour et al.
Introduction
Engineering Drivers
Technology
I S S M W O R K S H O P 2 0 1 1 J E T P R O P U L S I O N L A B O R A T O R Y
TechnologyMulti-physics
• ISSM is entirely written in C++ and is therefore object-oriented. Thisallows for ice flow modeling formulations to be deeply integrated withinthe software. Every type of ice flow model is encapsulated in low-levelroutines which can be called by general drivers.
• Example: creation of a stiffness matrix:
for(i=0;i< elements->Size();i++){element=elements->GetObjectById(i);element->CreateKMatrix();}
element is a derived object from a Tria or Penta class.• Multi-physics and coupling between different types of formulations is
transparent to the user, provided low-level routines are implemented.• Code is structured to assimilate new models with minimal impact, as
only additional low level routines are required.
9/9