Transfer Functions
The transfer_functions module deals with various formats that transfer functions are stored in. This includes reading and writing for most formats.
Supported Formats
Format |
Description |
Read |
Write |
---|---|---|---|
EDI |
Common SEG format (including spectra) |
Yes |
Yes |
EMTFXML |
Anna Kelbert’s XML format, archive format at IRIS |
Yes |
Yes |
ZFiles |
Output from Gary Egbert’s EMFT processing code [.zmm, .zrr, .zss] |
Yes |
Yes |
JFiles |
Jones’ format, also output of Alan Chave’s BIRRP code [.j] |
Yes |
No |
Zonge AVG |
Zonge International .avg format out put by their MTEdit code [.avg] |
Yes |
No |
Purpose
Modules exists for each supported format, but should only be used under the hood. Instead, the transfer_functions module was set up to have a common container for any transfer function. This is the mt_metadata.transfer_functions.core.TF
object. It can read any supported format and write those that have write methods.
The mt_metadata.transfer_functions.core.TF
object contains standard metadata and the data are stored in an xarray.DataSet
for generalization and easy access to elements.
Module Structure
The module structure for mt_metadata.transfer_functions
is setup to be plug-in like. Each transfer function file format has its own module in mt_metadata.transfer_functions.io
. For example EDI files are in the module mt_metadata.transfer_functions.io.edi
. Under each module there is a metadata folder and a metadata/standards folder to accommodate format specific metadata and standardize data types for those metadata.
mt_metadata.transfer_functions.io
-----------------------------------
|- edi
|- metadata
|- standards
|- .json standard files
|- zfiles
|- metadata
|- standards
|- .json standard files
|- jfiles
|- metadata
|- standards
|- .json standard files
|- zonge
|- metadata
|- standards
|- .json standard files
|- emtfxml
|- metadata
|- standards
|- .json standard files
Each of these modules are imported into mt_metadata.transfer_functions.io.readwrite for generic readers and writers. The mt_metadata.transfer_functions.core.TF
class uses the mt_metadata.transfer_functions.io.readwrite.read()
and mt_metadata.transfer_functions.io.readwrite.write()
functions to read and write through mt_metadata.transfer_functions.core.TF.read_tf_file()
and mt_metadata.transfer_functions.core.TF.write_tf_file()
methods
Supported Formats
Archiving Transfer Functions at IRIS
- Archive at IRIS SPUD EMTF
- Write EMTFXML File
- Archive at IRIS