Skip to content

Problem with GCMT convention in meca.py #1580

@weiji14

Description

@weiji14

Description of the problem

Originally reported by @philcummins at https://forum.generic-mapping-tools.org/t/pygmt-parameter-check-in-meca-py/1874. Copying here to keep track.

In the parameters section of the documentation block in meca.py, it says that the GCMT convention is determined if a dictionary with the following keys is passed:

  • "gcmt" — strike1, dip1, rake1, strike2, dip2, rake2, mantissa,exponent
    But later in the code, when the parameters to check against are set (line 250-252), it says:
    param_conventions = {
    “AKI”: [“strike”, “dip”, “rake”, “magnitude”],
    “GCMT”: [“strike1”, “dip1”, “dip2”, “rake2”, “mantissa”,“exponent”],

So it seems if you pass all the parameters it says it requires, it fails with:
GMTError: Parameters in spec dictionary do not match known conventions.

BTW, it says a geopandas dataframe an be used to pass in location info. Are there any planes to pass in the focal mechanism parameters in the geopandas dataframe as well?

Solution would be to modify this line I think:

"GCMT": ["strike1", "dip1", "dip2", "rake2", "mantissa", "exponent"],

I.e., need to add "rake1", "strike2" in the middle of the list.

Full code that generated the error

PASTE CODE HERE

Full error message

PASTE ERROR MESSAGE HERE

System information

Please paste the output of python -c "import pygmt; pygmt.show_versions()":

PASTE THE OUTPUT HERE

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions