Parser for the Swedish Geotechnical Society / Svenska Geotekniska Föreningen (SGF) data format
Project description
sgf-parser
Parser for data from geotechnical field investigations in the data format specified in Report 3:2012E from the Swedish Geotechnical Society / Svenska Geotekniska Föreningen (SGF).
This package is inspired by the libsgfdata package by EMerald Geomodelling.
Latest releases see CHANGES.md
Installation (end user)
pip install sgf-parser
Basic usage
from sgf_parser import Parser
with open("tests/data/cpt-test-3.cpt", "rt") as file:
# The test file only contains one method
[method] = Parser().parse(file)
print(repr(method))
# <MethodCPT CPT method_data=[<MethodCPTData 1.000>, <MethodCPTData 1.020>, <MethodCPTData 1.040>,
# <MethodCPTData 1.060>, <MethodCPTData 1.080>, <MethodCPTData 1.100>, <MethodCPTData 1.120>, ...,
# <MethodCPTData 24.940>, <MethodCPTData 24.960>, <MethodCPTData 24.980>]>
method.model_dump(exclude={'method_data'}, exclude_defaults=True)
# {'location_name': 'Test', 'project_number': '1234', 'method_type_string': '107A',
# 'conducted_at': datetime.datetime(2019, 9, 5, 11, 5), 'predrilling_depth': Decimal('1.00'),
# 'cone_reference': '5349', 'cone_area_ratio': Decimal('0.844'), 'sleeve_area_ratio': Decimal('0'),
# 'application_class_depth': <ApplicationClass.ONE: 1>, 'application_class_resistance': <ApplicationClass.ONE: 1>,
# 'application_class_friction': <ApplicationClass.ONE: 1>, 'application_class_pressure': <ApplicationClass.ONE: 1>,
# 'depth_top': Decimal('1.000'), 'depth_base': Decimal('24.980'), 'stopcode': 90}
method.stopcode
# 90
len(method.method_data)
# 1200
Getting Started developing
-
Software dependencies
- Python 3.11 or higher
- Poetry
- ruff code formatter
-
Clone this repository
-
Install
poetry install
Build and Test
Run in the project root folder:
poetry shell pytest
Build the package wheel:
poetry build
Publish
TODOs
- Implement everything
- Do the rest
Contribute
Please start by adding an issue before submitting any pull requests.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file sgf_parser-0.0.1.tar.gz
.
File metadata
- Download URL: sgf_parser-0.0.1.tar.gz
- Upload date:
- Size: 16.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.7 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2018d0669e06061b44658042d1fd0682c6f27c52a7732c4a26458e78c28aac8e |
|
MD5 | b76c2e30c8bb8268217d804a30643e6a |
|
BLAKE2b-256 | 4156770967e08fadffcb3fedd4ed84f7fbab62e12038d6eb40968fa2907ff795 |
File details
Details for the file sgf_parser-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: sgf_parser-0.0.1-py3-none-any.whl
- Upload date:
- Size: 21.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.7 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc728e33bdd59bf7c701b637822ef9adfc690d9cebd249db22871b580f914616 |
|
MD5 | 4810c0be8fb0fb24941507bc45fed1f8 |
|
BLAKE2b-256 | 7cb9d375654e0b7d75bf2006ead86ef2e8b037b44df210b3fc1afe31ece0d4f7 |