Loading [MathJax]/extensions/tex2jax.js
PISM, A Parallel Ice Sheet Model
2.2.1-cd005eec8 committed by Constantine Khrulev on 2025-03-07
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Variables
a
b
c
d
f
g
h
i
k
l
m
n
r
s
t
u
v
w
Typedefs
Enumerations
a
b
c
d
e
f
i
k
l
m
n
p
r
t
u
v
Enumerator
_
a
b
c
d
e
f
g
h
i
l
m
n
p
q
s
t
u
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
c
d
f
g
h
l
m
p
s
v
w
Enumerations
Enumerator
c
d
e
f
h
i
j
m
n
o
p
r
s
t
w
y
Related Symbols
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
p
r
s
t
u
w
z
Functions
a
b
c
d
e
f
g
h
i
l
m
p
r
s
u
Variables
b
c
d
e
g
h
k
l
m
n
p
r
s
t
u
w
z
Typedefs
Macros
_
a
b
c
g
h
i
k
m
n
r
s
t
u
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
src
rheology
grain_size_vostok.hh
Go to the documentation of this file.
1
/* Copyright (C) 2019 PISM Authors
2
*
3
* This file is part of PISM.
4
*
5
* PISM is free software; you can redistribute it and/or modify it under the
6
* terms of the GNU General Public License as published by the Free Software
7
* Foundation; either version 3 of the License, or (at your option) any later
8
* version.
9
*
10
* PISM is distributed in the hope that it will be useful, but WITHOUT ANY
11
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
13
* details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with PISM; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
18
*/
19
20
#ifndef GRAIN_SIZE_VOSTOK_H
21
#define GRAIN_SIZE_VOSTOK_H
22
23
#include <gsl/gsl_spline.h>
24
25
namespace
pism
{
26
namespace
rheology {
27
28
//! A relationship between the age of the ice and the grain size from the Vostok core.
29
/*! A data set is interpolated here. The intention is that the softness of the
30
ice has nontrivial dependence on its age, through its grain size, because of
31
variable dustiness of the global climate. The grain size is partly determined
32
by at which point in the glacial cycle the given ice fell as snow.
33
34
The data is from [@ref DeLaChapelleEtAl98] and [@ref LipenkovEtAl89]. In
35
particular, Figure A2 in the former reference was hand-sampled with an
36
attempt to include the ``wiggles'' in that figure. Ages of the oldest ice (>=
37
300 ka) were estimated in a necessarily ad hoc way. The age value of 10000 ka
38
was added simply to give interpolation for very old ice; ages beyond that get
39
constant extrapolation. Linear interpolation is done between the samples.
40
*/
41
class
grain_size_vostok
{
42
public
:
43
grain_size_vostok
();
44
~grain_size_vostok
();
45
46
/*!
47
* Return grain size in meters given ice age in years.
48
*/
49
double
operator()
(
double
a);
50
private
:
51
static
const
int
m_N
= 22;
52
static
const
double
m_age
[
m_N
];
53
static
const
double
m_grain_size
[
m_N
];
54
55
gsl_interp_accel*
m_acc
;
56
gsl_spline*
m_spline
;
57
58
// disable copy constructor and the assignment operator:
59
grain_size_vostok
(
const
grain_size_vostok
&other);
60
grain_size_vostok
&
operator=
(
const
grain_size_vostok
&);
61
};
41
class
grain_size_vostok
{
…
};
62
63
}
// end of namespace rheology
64
}
// end of namespace pism
65
66
#endif
/* GRAIN_SIZE_VOSTOK_H */
pism::rheology::grain_size_vostok::m_acc
gsl_interp_accel * m_acc
Definition
grain_size_vostok.hh:55
pism::rheology::grain_size_vostok::grain_size_vostok
grain_size_vostok()
Definition
grain_size_vostok.cc:42
pism::rheology::grain_size_vostok::operator()
double operator()(double a)
Definition
grain_size_vostok.cc:53
pism::rheology::grain_size_vostok::m_grain_size
static const double m_grain_size[m_N]
Definition
grain_size_vostok.hh:53
pism::rheology::grain_size_vostok::m_spline
gsl_spline * m_spline
Definition
grain_size_vostok.hh:56
pism::rheology::grain_size_vostok::~grain_size_vostok
~grain_size_vostok()
Definition
grain_size_vostok.cc:48
pism::rheology::grain_size_vostok::grain_size_vostok
grain_size_vostok(const grain_size_vostok &other)
pism::rheology::grain_size_vostok::m_N
static const int m_N
Definition
grain_size_vostok.hh:51
pism::rheology::grain_size_vostok::operator=
grain_size_vostok & operator=(const grain_size_vostok &)
pism::rheology::grain_size_vostok::m_age
static const double m_age[m_N]
Definition
grain_size_vostok.hh:52
pism::rheology::grain_size_vostok
A relationship between the age of the ice and the grain size from the Vostok core.
Definition
grain_size_vostok.hh:41
pism
Definition
AgeColumnSystem.cc:23
Generated by
1.9.8