Displacement-strain-planet

Latest version: v0.5.0

Safety actively analyzes 681812 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.5.0

Major changes

- Added a new function `Displacement_strains_shtools`. This function is similar to `Displacement_strains` except that it uses Shtools to compute the spherical harmonic derivative. This new function is drastically faster and should be used for most usage. This function currently does not support GLQ grids.

Minor changes

- `readme`: Text update.

- `Thin_shell_matrix`: Minor typo correction to the Gc_lm equation.

- `SH_deriv_store`: Can now take input latitude/colatitude bounds to limit the computation region. Further optimized the whole sphere computation routine.

- `Displacement_strain` and `Displacement_strain_shtools`: Added "depth" parameter to estimate the strain at a given depth.

- `Mars_SouthPolarCap_displacement`: Added some text to clarify the iteration approach. Added a second method to directly estimate flexure with the "add_equation" option.

- `Run_demo`: Updated the jupyter notebook with more example, including how to compute crustal thickness considering Pratt or Airy isostasy.

- Removed all `ducc` built in calls, which were causing some issues with the installer.

0.4.0

––––––––––––––

**Minor enhancements**
- 'SH_deriv_store': The function now accepts latitude bounds as input.
- 'B1986_nmax': Minor text corrections and small improvements to the overall organization and speed.
- 'Thin_shell_matrix_nmax': Minor performance edits to avoid redundant calculations.
- Default some SHTOOLs routines to ducc, which is faster for most applications.
- Added a function 'Strainstress_from_principal' to estimates the theta, phi, thetaphi components of the strain or stress field from the principal values.

**Full Changelog**: https://github.com/AB-Ares/Displacement_strain_planet/compare/0.3.2...0.4.0

0.3.2

**Improvements:**
-Slightly optimized _Plt_tecto_Mars_
-Vectorized and optimized parts of _SH_deriv_store_, resulting in a significant speedup of at least x6.

**Modifications:**
-_Displacement_strains_ now outputs the total strains together with the extensional and flexural strains.

**Corrections**
-Slightly corrected how the extensional strains are estimated at the surface in _Displacement_strains_ following Beuthe (2008). Previously multiplied by Te / 2, now multiplied by Te / 2 / (1 + Te/2/R) ~ Te / 2 (for large R). This is going to matter mostly for small bodies.

0.3.1

**Improvements:**
_SH_deriv_store_:
-Improved the SH derivates storage using 2-d indexes to store 3-d spherical harmonics (see _SHCilmToCindex_ in SHTOOLs). As a result:
The array size goes from (2, lmax+1,lmax+1) to (2, (lmax + 1) * (lmax + 2) / 2), which largely decreases the size of the stored derivates (factor 2).
-The speed of the strain calculations increases by a factor 2 in _Displacement_strains_.
_Thin_shell_matrix_:
-Added a parameter to correct for lateral density variations within reliefs for the net load q_lm.
-Added an optional argument "iterate". If false, it will force the model to not apply any corrections (corrections can happen when drhom_lm != 0 even if nmax = 1).
-Added further check to compute degree-1 geoid and displacement depending on the input equation.
-Added further check to compute internal density variations depending on the input top_drho & base_drho (crust, mantle).

-Updated description & examples in the jupyter notebook

**Modifications:**
_corr_nmax_drho_:
-removed all filtering from the function. All filtering is now performed in _Thin_shell_matrix_.

**Corrections:**
_B1986_nmax_:
-Corrected some inconsistency in defining flexural parameters when Te = 0.
-Correction to filtering, which should only apply to the isostatic bottom loads (dc_lm & drhom_lm). It was previously applied to the moho relief (= w_lm - dc_lm) in the G_lm equation.

0.3.0

**Improvements:**
_B1986_nmax_:
-The user can now input several add_arrays, and multiplications in add_equation are now partially supported.
-An optional argument COM has been added to force the degree-1 geoid terms to be zero (as required in a center-of-mass framework)
-Cleanup some synthax and updated error messages

_Displacement_strain_:
-_SH_deriv_Store_: Added option to input dtype. Using float32 instead of 64 can significantly reduce the array size for large lmax.
-_SH_deriv_Store_: Added the "grid" and lmaxgrid optional arguments (also to Displacement_strains). The grid can either be 'DH' or 'GLQ' following the convention of SHTOOLs. Grid shapes are updated accordingly GLQ: (lmaxgrid+1,2*lmaxgrid+1), DH (2*lmaxgrid+1, 2*(2*lmaxgrid+1)). The default grid is now GLQ, which should allow for faster computation of Y_lms derivatives and strains and reduces the file size of Y_lms.

Modified some of the examples in the jupyter notebook to demonstrate how one can use the add_equation options with multiplications and multiple add_arrays.

**Corrections:**
_B1986_nmax_:
-Correct a bug when using filtering with nmax != 1
-Fixed the degree-1 equation for flexure (based on Beuthe 2008)
_Displacement_strain_:
-Corrected Plt_tecto_Mars to include the last point in the Knapmeyer dataset.

0.2.5

**Improvements**:
_Displacement_strains_
-Specify einsum path to optimize the einsum computation, which increases the computation by 30%.
-Added the option to input lmaxgrid, which will control the output gridsizes.

_SH_deriv_Store_
-Added the option to input lmaxgrid, which will control the output gridsizes.

**Corrections**:
_B1986_nmax_
-Minor correction where the tangential displacement was wrongly incrementally increased in the case where the density contrast is located in the surface topo or crust.
-Fixed default values of base_drho and top_drho to be consistent in all functions.

_SH_deriv_ and _SH_deriv_store_
-Corrected a typo that caused a blow up of the derivatives at the pole.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.