-
Notifications
You must be signed in to change notification settings - Fork 0
Home
All information about the functions, their parameters, and their purpose (including source code) is located in the API Documentation.
First, collect the files you will need to process all the data
File | Category | Preferred Format | Function used to read | Description |
---|---|---|---|---|
Data* | Well Data | .csv or .txt | pandas.read_csv()) | File Containing the well data. Needs to include for each well interval at least the following: unique well identifier, top depth/elevation, bottom depth/elevation, geologic description |
Metadata* | Well Data | .csv or .txt | pandas.read_csv()) | File containing well metadata. This should include unique well identifier (esp. if different file than Data), x-location of each well, y-location of each well |
Surface Elevation† | Boundaries | .tif | rioxarray.open_rasterio() | File containing surface elevation data, either as only band or first band |
Bedrock Elevation† | Boundaries | .tif | rioxarray.open_rasterio() | File containing bedrock elevation data, either as only band or second band if it is the same file as Surface Elevation |
Model Grid (or grid params)† | Boundaries | .tif | rioxarray.open_rasterio() | File containing grid (empty or not) to which surface, bedrock, and output grids will be aligned), either as only band, or if the surface, bedrock, and model grid file are all the same, will default to bedrock grid (not yet implemented) |
Lithology Definitions: Exact‡ | Definitions | .csv or .txt | pandas.read_csv()) | File containing definitions, with at minimum a column for input definition and one lithology definitions |
Lithology Definitions: Starting‡ | Definitions | .csv or .txt | pandas.read_csv()) | File containing definitions, with at minimum a column for the starting substring of an input definition, and one for lithology definitions |
Lithology Definitions: Wildcard‡ | Definitions | .csv or .txt | pandas.read_csv()) | File containing definitions, with at minimum a column for the wildcard substring of an input definition, and one for lithology definitions |
Target Categories‡ | Definitions | .csv or .txt | pandas.read_csv()) | File containing target categorizations, with at minimum a column containing the lithology definitions and one for the target categorization (usually, semi-boolean: target (1), not target (0), and (optional) unknown (-1) |
Optional Files: | ||||
Study area | Boundaries | {geospatial file} | geopandas.read_file() | Geospatial polygon file able to be read by geopandas delineating the area of interest. If not specified, will use the bounding box of the input well dataset |
*, †, and ‡ indicate data that can be read in separately, or from the same file
Using the w4h.run() function allows most of the steps to be automated. However, you will still need to input parameters. All parameters for all modules and functions are unique (some functions require the same input parameters as others, so the parameter names may overlap in that case). Because they are unique, you can input any parameter into the w4h.run() function, and it will be used in the proper function.
See the API Documentation for w4h.run() more information on possible parameters.
When you call the w4h.run() function, the workflow of how functions and their parameters are called is laid out in detail and in order here. An example is included below:
w4h.run(well_data=dataDir,
well_data_cols=None,
well_metadata=None,
well_metadata_cols=None,
layers=9,
description_col='FORMATION', top_col='TOP', bottom_col='BOTTOM', depth_type='depth',
study_area=studyAreaPath, xcol='LONGITUDE', ycol='LATITUDE', zcol='ELEVATION', idcol='API_NUMBER', output_crs='EPSG:4269',
surf_elev_file=surfaceElevPath, bedrock_elev_file=bedrockElevPath, model_grid=modelGridPath,
lith_dict=specDictPath, lith_dict_start=startDictPath, lith_dict_wildcard=None,
target_dict=targetPath,
export_dir=procDir,
verbose=True,
log=False,
)
Note: in the w4h.run() function there are sometimes a few lines of code between functions, and there are several lines of code at the beginning to setup everything. See source code in the API Documentation for the w4h.run() function for more info.