Thickness outputs from all thickness calculators are now merged
LPF version pinned to 1.4
Added folder with datasets in map2loop/_datasets/geodata_files/hamersley. The idea behind this is to have a data loading function, e.g., at the moment load_hamersley_geology() returns a gdf with the geology; structure and dtm are available, and others will be added later on. This is quite useful for tests, but should also be useful for when we implement #74. The only thing about this is the location, which implies a long import: from map2loop._datasets.geodata_files.hamersley import load_hamersley_geology. Happy to change the file location - does anyone has a suggestion?
Minimum fault length is now a parameter of the config file, and it actually removes the faults with length under defined value.
Removed the project.set_minimum_fault_length method to avoid users setting the parameter twice.
added all_basal_contacts object which are abnormal+basal contacts , and basal_contacts holds only the basal. Reconstruction of sampled_basal_contacts is based on basal_contacts
changed the thickness_calculator_alpha to be coherent with the logic of the other thickness calculators
added tests for some of the functions in mapdata.py
added tests for thickness_compute in project.py
rewrote tests for all thickness calculators independently (now without having to run the project)
summary of other minor modifications:
tmpfile is now used to create the localGdalfile
changed to f"" strings where possible
change from os.path.join to pathlib.Path where possible
added geopandas to csv converter in mapdata (it was on a #TODO)
added check and error message to make sure that all units in user_defined_stratigraphic_column are in the geology file (otherwise project creation fails; at least now user has a warning).
renamed distance to stratigraphic_distance in basal_contacts creation
removed set_ and get_thickness_calculator
rectified minor typos in the thickness calculators
added a Linalgerror catch/pass for the InterpolatedStructure
Fixes #86
Fixes #110
Fixes #111
Fixes #12
Type of change
[x] Bug fix (non-breaking change which fixes an issue)
[x] Test improvement
How Has This Been Tested?
The branch is fix/thicknesses_AR_2.
Checklist:
[x] This branch is up-to-date with master
[x] All gh-action checks are passing
[x] I have performed a self-review of my own code
[x] My code follows the style guidelines of this project
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added tests that prove my fix is effective or that my feature works
[x] My tests run with pytest from the map2loop folder
[x] New and existing tests pass locally with my changes
Summary of major changes:
load_hamersley_geology()
returns a gdf with the geology; structure and dtm are available, and others will be added later on. This is quite useful for tests, but should also be useful for when we implement #74. The only thing about this is the location, which implies a long import:from map2loop._datasets.geodata_files.hamersley import load_hamersley_geology
. Happy to change the file location - does anyone has a suggestion?Minimum fault length
is now a parameter of the config file, and it actually removes the faults with length under defined value.project.set_minimum_fault_length
method to avoid users setting the parameter twice.all_basal_contacts
object which are abnormal+basal contacts , andbasal_contacts
holds only the basal. Reconstruction ofsampled_basal_contacts
is based onbasal_contacts
thickness_calculator_alpha
to be coherent with the logic of the other thickness calculatorsmapdata.py
thickness_compute
inproject.py
summary of other minor modifications:
tmpfile
is now used to create the localGdalfileos.path.join
topathlib.Path
where possibleuser_defined_stratigraphic_column
are in the geology file (otherwise project creation fails; at least now user has a warning).distance
tostratigraphic_distance
inbasal_contacts
creationset_
andget_thickness_calculator
Fixes #86 Fixes #110 Fixes #111 Fixes #12
Type of change
How Has This Been Tested?
The branch is fix/thicknesses_AR_2.
Checklist: