Difference between revisions of "Glam output"
Tony-payne (talk | contribs) |
Tony-payne (talk | contribs) |
||
Line 3: | Line 3: | ||
== Selecting output from GLAM == | == Selecting output from GLAM == | ||
− | GLAM outputs 2d and 3d variables in files glam.2df and glam.3df, respectively. These files are binary and can be read with MATLAB scripts (see below). The interval between output is selected using the variable nout within glam.nml. The three elements of this array contain intervals for point, 2d and 3d output (the first is no longer used). The unit is years. Note that GLAM will also at the first (tstr) and final (tstr+trun) time step irrespective of these settings; the actual time integration loop runs from tstr+tinc until trun is exceeded. The variable | + | GLAM outputs 2d and 3d variables in files <tt>glam.2df</tt> and <tt>glam.3df</tt>, respectively. These files are binary and can be read with MATLAB scripts (see below). The interval between output is selected using the variable <tt>nout</tt> within <tt>glam.nml</tt>. The three elements of this array contain intervals for point, 2d and 3d output (the first is no longer used). The unit is years. Note that GLAM will also output at the first (<tt>tstr</tt>) and final (<tt>tstr+trun</tt>) time step irrespective of these settings; the actual time integration loop runs from <tt>tstr+tinc</tt> until <tt>trun</tt> is exceeded. The variable <tt>nstrv</tt> can be used to control when output starts in a time-dependent simulation; output will only be written after <tt>nstr</tt> (in years). This is useful if we are only interested in the equilibrium. |
− | The variables that are output can be selected by editing glam.out. This file contains | + | The variables that are output can be selected by editing <tt>glam.out</tt>. This file contains two arrays (<tt>which2d</tt> and <tt>which3d</tt>). Output for a particular variable is selected if the appropriate entry in the array is 1 (otherwise set to zero). The variables currently available for output are shown in Tables 1 and 2. |
{| border="1" | {| border="1" | ||
− | |+ Table 1. 3d variables available from GLAM. | + | |+ '''Table 1. 3d variables available from GLAM.''' |
| || Variable || Grid || Units || MATLAB name | | || Variable || Grid || Units || MATLAB name | ||
|- | |- | ||
− | | 1 || Horizontal velocity in x || Staggered || m yr-1 || u | + | | 1 || Horizontal velocity in x || Staggered || m yr<sup>-1 </sup>|| u |
|- | |- | ||
− | | 2||Horizontal velocity in y||Staggered||m yr-1||v | + | | 2||Horizontal velocity in y||Staggered||m yr<sup>-1</sup>||v |
|- | |- | ||
− | | 3||Vertical velocity Normal||m yr-1||w| | + | | 3||Vertical velocity||Normal||m yr<sup>-1</sup>||w| |
|- | |- | ||
− | | 4||Vertical velocity of grid||Normal||m yr-1||wg | + | | 4||Vertical velocity of grid||Normal||m yr<sup>-1</sup>||wg |
|- | |- | ||
− | | 5||Glen’s A|| | + | | 5||Glen’s A||Normal||Pa<sup>-3</sup> yr<sup>-1</sup>||a |
|- | |- | ||
| 6||Temperature||Normal||deg. C||t | | 6||Temperature||Normal||deg. C||t | ||
Line 46: | Line 46: | ||
|} | |} | ||
+ | '''Table 2. needs to be done''' | ||
− | == Viewing output from GLAM in | + | == Viewing output from GLAM in MATLAB == |
− | The GLAM output files can be loaded using MATLAB scripts glam2d.m and glam3d.m. Both are called using [a] = glam3d(N,PATH); (where N is the time step of interest and PATH is the relative location of the output file, e.g. ‘.’ for same directory). These scripts create a MATLAB structure that can be referenced as follows. For 3d output, use a.NAME(I,J,K) where NAME is the variable’s MATLAB name (see Tables 1 and 2), I and J are horizontal indices and K the vertical index. Note that it is often necessary to compress the 3d array to a 2d array for | + | The GLAM output files can be loaded using MATLAB scripts <tt>glam2d.m</tt> and <tt>glam3d.m</tt>. Both are called using <tt>[a] = glam3d(N,PATH);</tt> (where <tt>N</tt> is the time step of interest and <tt>PATH</tt> is the relative location of the output file, e.g. ‘.’ for same directory). These scripts create a MATLAB structure that can be referenced as follows. For 3d output, use <tt>a.NAME(I,J,K)</tt> where <tt>NAME</tt> is the variable’s MATLAB name (see Tables 1 and 2), <tt>I</tt> and <tt>J</tt> are horizontal indices and <tt>K</tt> the vertical index. Note that it is often necessary to compress the 3d array to a 2d array for plotting purposes using <tt>squeeze()</tt>. The command <tt>imagesc(squeeze(a.txz(:,:,end)))</tt> will produce an image of basal traction. |
Revision as of 11:15, 27 July 2007
Output from GLAM
Selecting output from GLAM
GLAM outputs 2d and 3d variables in files glam.2df and glam.3df, respectively. These files are binary and can be read with MATLAB scripts (see below). The interval between output is selected using the variable nout within glam.nml. The three elements of this array contain intervals for point, 2d and 3d output (the first is no longer used). The unit is years. Note that GLAM will also output at the first (tstr) and final (tstr+trun) time step irrespective of these settings; the actual time integration loop runs from tstr+tinc until trun is exceeded. The variable nstrv can be used to control when output starts in a time-dependent simulation; output will only be written after nstr (in years). This is useful if we are only interested in the equilibrium.
The variables that are output can be selected by editing glam.out. This file contains two arrays (which2d and which3d). Output for a particular variable is selected if the appropriate entry in the array is 1 (otherwise set to zero). The variables currently available for output are shown in Tables 1 and 2.
Variable | Grid | Units | MATLAB name | |
1 | Horizontal velocity in x | Staggered | m yr-1 | u |
2 | Horizontal velocity in y | Staggered | m yr-1 | v |
3 | Vertical velocity | Normal | m yr-1 | |
4 | Vertical velocity of grid | Normal | m yr-1 | wg |
5 | Glen’s A | Normal | Pa-3 yr-1 | a |
6 | Temperature | Normal | deg. C | t |
7 | Effective viscosity | Normal | Pa s | evs |
8 | Effective stress | Normal | Pa | tau |
9 | Vertical shear stress in x | Normal | Pa | txz |
10 | Vertical shear stress in y | Normal | Pa | tyz |
11 | Horizontal shear | Normal | Pa | txy |
12 | Longitudinal stress deviator in x | Normal | Pa | txx |
13 | Longitudinal stress deviator in y | Normal | Pa | tyy |
14 | Gravitational driving stress in x | Normal | Pa | gdx |
15 | Gravitational driving stress in y | Normal | Pa | gdy |
Horizontal distances | Both | m | vxn yn xs ys | |
Vertical distances | Both | m | zn zs |
Table 2. needs to be done
Viewing output from GLAM in MATLAB
The GLAM output files can be loaded using MATLAB scripts glam2d.m and glam3d.m. Both are called using [a] = glam3d(N,PATH); (where N is the time step of interest and PATH is the relative location of the output file, e.g. ‘.’ for same directory). These scripts create a MATLAB structure that can be referenced as follows. For 3d output, use a.NAME(I,J,K) where NAME is the variable’s MATLAB name (see Tables 1 and 2), I and J are horizontal indices and K the vertical index. Note that it is often necessary to compress the 3d array to a 2d array for plotting purposes using squeeze(). The command imagesc(squeeze(a.txz(:,:,end))) will produce an image of basal traction.