Open kkappler opened 3 weeks ago
To allow this functionality with the legacy TransferFunctionCollection output I forked a branch of aurora fix_mtpy_issue_67 where the changes are pushed.
There is an example tutorial here to see what (minor) changes need to be made when you process an mth5.
This seems to work for a single station, and in the remote reference case. To use these changes, one currently must work off of the fix_mtpy_issue_67
branch of aurora.
Currently MT TFs are only supported for the usual transfer functions. This means (neglecting the Remote reference station) we are regressing Y on X where Y is ["ex", "ey", "hz"], and X is ["hx", "hy"].
What if someone wanted to regress ["ex", "ey"] on ["hx", "hy", "hz"] for example. This is supported in principle by the processing configuration in aurora. After building the processing config, one would simply call:
before
process_mth5
.Expected Behavior
A TF would be yielded mapping ex to a linear combination of all three magnetics, and likewise for ey.
Current Behavior
This fails to work for the following reasons
Failure Reason 1
then the TF processing seems to work fine, so we could add a try/except, or upgrade the dof weights function.
Failure Reason 2
this fails around line 610 of
transfer_function_kernel.py
at the time a tf is assigned to the mt_metadata object:tf_cls.transfer_function = tmp
this traces to the core of mt_metadataThere is actually a legacy workaround for this in aurora, which is to pass the optional argument
return_collection=True
toprocess_mth5
. This will skip return the legacyTransferFunctionCollection
object, like this:Possible Solution
If we want to support non-standard TFs in general, we would need to modify mt_metadata, but to do this in aurora and use the legacy TFCollection, only minor changes are needed.