You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/source/index.rst
+23-10Lines changed: 23 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,29 @@ Loop Structural
7
7
===============
8
8
.. image:: ./images/image823.png
9
9
10
+
.. important:: **Upgrading from 1.5.x to 1.6.x**
11
+
12
+
Version 1.6.x of LoopStructural has been released and there are a number of changes to how the library is used. The main changes are:
13
+
14
+
- The `LavaVuModelViewer` class has been removed and the model visualisation has been ported to `pyvista` using a LoopStructural
15
+
wrapped `loopstructuralvisualisation`. Many of the functions have been re-named and can be combined with the `pyvista.Plotter` methods for advanced
16
+
visualisation. pyvista does not currently allow for interactive plots while using colab notebooks, so `jupyter_backend='static'` is needed.
17
+
- Datastructures for representing model input/output have been introduced including the `LoopStructural.datatypes.StructuredGrid`,
18
+
:class:`LoopStructural.datatypes.ValuePoints`, :class:`LoopStructural.datatypes.VectorPoints` and :class:`LoopStructural.datatypes.Surface`. These Datastructures
19
+
are intended to improve the accessibility of the modelling and allow for easier export into other software packages.
20
+
All data objects have a `.save` method that allows the user to save the points into various formats including `json`, `csv`, `vtk` and `geoh5`.
21
+
In the future exporters for gocad and other formats will be added. All objects also have a `.vtk()` method to return a `pyvista.PolyData` object.
22
+
- The solver options for the interpolators have been removed and only :meth:`scipy.sparse.linalg.cg` and :meth:`scipy.sparse.linalg.lsmr` are supported.
23
+
To use an external solver the `external_solver` argument can be provided to the `interpolator.solve` method, usually passed through
24
+
the `model.create_and_add*` methods. To specify specific arguments to the solver these can be passed through `solver_kwargs` dict.
25
+
- Improvements have been made to how unconformities are handled and their interaction with faults
26
+
- A framework for including inequalities into the interpolation has been added but there is no solver that can be used for solving this problem.
27
+
- A convenience class :class:`LoopStructural.LoopInterpolator` was added for building an implicit function without requiring the :class:`LoopStructural.GeologicalModel`
28
+
**Please report any bugs or issues on the github repository.**
29
+
30
+
Overview
31
+
========
32
+
10
33
Loop structural is an open source 3D modelling library providing access to multiple interpolation schemes with a
11
34
high level and easy to use API for creating geological models. The library has been written for the Loop platform by
12
35
Lachlan Grose at Monash University.
@@ -15,17 +38,7 @@ Loop is an open source 3D probabilistic geological and geophysical modelling pla
15
38
initiated by Geoscience Australia and the OneGeology consortium. The project is funded by Australian territory,
16
39
State and Federal Geological Surveys, the Australian Research Council and the MinEx Collaborative Research Centre.
17
40
18
-
LoopStructural is the forward geological modelling engine for the loop and contains the classes and functions to manage the various
19
-
elements in a 3D geological model. Including stratigraphy, unconformities, fault and folds. LoopStructural contains
Copy file name to clipboardExpand all lines: docs/source/user_guide/visualisation.rst
+18-19Lines changed: 18 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,19 +15,19 @@ There are four main ways a GeologicalFeature can be visualised.
15
15
16
16
.. code-block::
17
17
18
-
view.add_scalar_field(geological_feature)
18
+
view.plot_scalar_field(geological_feature)
19
19
20
20
2. Surfaces extracted from isovalues of the implicit function
21
21
22
22
.. code-block::
23
23
24
-
view.add_isosurface(geological_feature,value=0)
24
+
view.plot_surface(geological_feature,value=0)
25
25
26
26
3. Vector field representing the gradient of the implicit function
27
27
28
28
.. code-block::
29
29
30
-
view.add_isosurface(geological_feature)
30
+
view.plot_surface(geological_feature)
31
31
32
32
4. Cross section showing the value of the implicit function at a particular location inside the model
33
33
@@ -43,24 +43,23 @@ When adding to the viewer there are a number of common arguments that can be spe
43
43
44
44
* - Parameter
45
45
- Options
46
-
* - name
47
-
- overwrite the name of the object to be added into the viewer
48
46
* - vmin
49
47
- minimum value for colourmap
50
48
* - vmax
51
49
- maximum value for colourmap
52
50
* - cmap
53
51
- matplotlib colourmap or string with name of matplotlib colourmap e.g. 'rainbow'
52
+
* - pyvista_kwargs
53
+
- any arguments to be passed to the :meth:`pyvista.Plotter.add_mesh` method
54
54
55
55
The default behaviour of the viewer can also be modified.
56
-
To change the resolution of the scalar field or isosurfacing, either set the number of steps in x,y,z or the total number of elements.
56
+
To change the resolution of the scalar field or isosurfacing, either set the number of steps in x,y,z or the total number of elements of tht bounding box
57
57
58
58
.. code-block::
59
-
60
-
view.nsteps = np.array([nx,ny,nz])
61
-
print(view.nsteps)
62
-
view.nelements = 1e6
63
-
print(view.nsteps)
59
+
model.bounding_box.nsteps = np.array([nx,ny,nz])
60
+
print(model.bounding_box.nsteps)
61
+
model.bounding_box.nelements = 1e6
62
+
print(model.bounding_box.nsteps)
64
63
65
64
66
65
@@ -72,24 +71,24 @@ To add all of the data attached to a GeologicalFeature
The function passed to the LambdaGeologicalFeature can be as simple or complicated as required.
131
130
It will be evaluated for the locations within the model that the visualisation requires, usually between the origin and maximum of the geoloical model.
0 commit comments