Skip to content

Commit

Permalink
update input definition
Browse files Browse the repository at this point in the history
  • Loading branch information
tristan-salles committed Jun 24, 2024
1 parent 2ca0e29 commit 6db1ae9
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 13 deletions.
8 changes: 4 additions & 4 deletions docs/user_guide/optfile1.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Sea-level (eustatic) forcing
sea:
position: 0.
curve: 'data/sealevel.csv'
curve: 'sealevel.csv'
The sea-level declaration is defined with 2 optional parameters:
Expand All @@ -48,9 +48,9 @@ Climatic (rainfall) forcing conditions
.. code:: python
climate:
- start: -20000000.
map: ['input8/rain20Ma','r']
- start: -15000000.
- start: 1000.
map: ['rain20Ma','r']
- start: 20000.
uniform: 1.
Expand Down
60 changes: 53 additions & 7 deletions docs/user_guide/optfile2.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,32 +20,78 @@ Tectonic forcing parameters
tectonic:
- start: -20000000.
end: -19000000.
mapH: 'input8/disp20Ma'
mapH: 'disp20Ma'
- start: -19000000.
end: -18000000.
mapH: 'input8/disp19Ma'
mapH: 'disp19Ma'
- start: -18000000.
end: -17000000.
mapH: 'input8/disp18Ma'
mapH: 'disp18Ma'
- start: -17000000.
end: -16000000.
mapH: 'input8/disp17Ma'
mapV: 'input8/dispv17Ma'
mapH: 'disp17Ma'
mapV: 'dispv17Ma'
- start: -16000000.
end: -15000000.
mapV: 'input8/dispv16Ma'
mapV: 'dispv16Ma'
It defines the tectonic forcing conditions from a sequence of events defined by a starting and ending time (``start`` and ``end``) and either a vertical only forcing (*e.g.* uplift and/or subsidence defined with ``mapV``) or a fully 3D displacement mesh ``mapH``. **These displacement rates are set in metres per year**.


.. important::

Here again, these forcing files are defined as numpy zip array (**.npz**). These files use specific keys to identify the tectonic forcing. For vertical only condition, the key ``z`` specified the displacements. For the horizontal condition, the ``xyz`` key is used where `xyz` is a 3D array containing the displacement rates along the x, y and z axis (in m/yr).
Here again, these forcing files are defined as numpy zip array (**.npz**). These files use specific keys to identify the tectonic forcing. For vertical only condition, the key ``z`` specified the displacements. For the horizontal condition, the ``xyz`` key is used where ``xyz`` is a 3D array containing the displacement rates along the x, y and z axis (in m/yr).

.. note::

There is no requirement to impose continuous tectonics forcing and you might chose to have periods without displacement by making discontinuous events using the ``start`` and ``end`` keys.


Plate forcing parameters
----------------------------

Alternatively to the horizontal advection velocity rates proposed in the previous section, one might use the following approach where the plate advection parameters required for interpolation are already set.

.. note::
This approach does not need to build a `SciPy cKDTree <https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.cKDTree.html>`_ to perform the inverse weighting distance interpolation as the neighborhing fields are already pre-calculated.


.. grid:: 1
:padding: 3

.. grid-item-card::

**Declaration example**:

.. code:: python
plates:
- start: -20000000.
plate: 'plate20Ma'
upsub: 'vdisp20Ma'
- start: -15000000.
plate: 'plate15Ma'
upsub: 'vdisp15Ma'
- start: -10000000.
plate: 'plate10Ma'
upsub: 'vdisp10Ma'
Plate related horizontal displacements ``plate`` are performed at specified ``start`` time whereas vertical displacements (``upsub``) are done at ``dt`` intervals. Like above, the ``upsub`` are set in metres per year. Both files are numpy zip arrays (**.npz**) and require specific keys.

.. important::

1. For the plate advection information file ``plate``:
- ``clust``: the cluster of nodes used for interpolation,
- ``cngbh`` the indices of the nodes in the considered cluster neighborhood,
- ``dngbh`` the distances between the advected nodes and the mesh,
- ``ingbh`` the nodes that remain at the same position after advection.
2. For the vertical displacements mesh ``upsub``:
- ``t`` the uplift/subsidence tectonic rates,
- ``z`` the paleo-elevation values

There is no requirement to impose both of these files and in the ``upsub`` mesh you can specify either ``z`` or ``t`` or both. If you do define ``z`` then your simulation is forced to fit with the paleo-elevation values.


Flexural isostasy definition
-----------------------------------

Expand Down
2 changes: 1 addition & 1 deletion docs/user_guide/surfproc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ Hillslope and marine deposition parameters
b. ``hillslopeKm`` is the diffusion coefficient for the marine domain,
c. ``smthDep`` is the transport coefficient of freshly deposited sediments entering the ocean from rivers,
d. ``clinSlp`` is the maximum slope of clinoforms (needs to be positive), this slope is then used to estimate the top of the marine deposition based on distance to shore.
d. ``diffNb`` is the number of steps used to distribute the sediment fluxes in the marine domain. Default value is set to 1.
e. ``diffNb`` is the number of steps used to distribute the sediment fluxes in the marine domain. Default value is set to 1.

Compaction & porosity variables definition
------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion gospl/mesher/earthplates.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ def _readAdvectionData(self):
- `clust` the cluster of nodes used for interpolation,
- `cngbh` the indices of the nodes in the considered cluster neighborhood,
- `dngbh` the distances between the advected nodes and the underformed mesh,
- `dngbh` the distances between the advected nodes and the mesh,
- `ingbh` the nodes that remain at the same position after advection.
"""

Expand Down

0 comments on commit 6db1ae9

Please sign in to comment.