Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Error encountered while converting ssmLT.xml file to gpkg format

37 views
Skip to first unread message

Xiang Chen

unread,
Aug 30, 2024, 4:22:35 AM8/30/24
to OpenQuake Users
Dear developer, 

When I use oq nrml_to gpkg ssmLT.xml this command to convert ssmLT.xml files to gpkg format, I get the following error:

INFO:root:Reading ssmLT.xml
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Scripts\oq.exe\__main__.py", line 7, in <module>
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\commands\__main__.py", line 48, in oq
    sap.run(commands, prog='oq')
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 212, in run
    return _run(parser(funcdict, **parserkw), argv)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 203, in _run
    return func(**dic)
           ^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 214, in convert_to
    srcmodel_attrib = root.sourceModel.attrib
                      ^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\node.py", line 483, in __getattr__
    raise AttributeError("No subnode named '%s' found in '%s'" %
AttributeError: No subnode named 'sourceModel' found in 'nrml'

The oq version is 3.20.1.And the source file is a model of the Chinese source that I obtained from the GEM website.

I would appreciate it if you could answer that question for me.

Bests  regards,

Chen Xiang

Anirudh Rao

unread,
Aug 30, 2024, 4:32:24 AM8/30/24
to OpenQuake Users
Just looking at the filename, it seems like you are trying to convert a source model logic tree file instead of a source model file.

Xiang Chen

unread,
Aug 30, 2024, 5:29:17 AM8/30/24
to openqua...@googlegroups.com
Dear Anirudh,

I read it wrong, I found the correct source model file, but I'm still get the following error:

When I use oq nrml_to gpkg sm_m6_asc.xml

INFO:root:Reading sm_m6_asc.xml

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Scripts\oq.exe\__main__.py", line 7, in <module>
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\commands\__main__.py", line 48, in oq
    sap.run(commands, prog='oq')
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 212, in run
    return _run(parser(funcdict, **parserkw), argv)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 203, in _run
    return func(**dic)
           ^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 250, in convert_to
    appendrow(row, srcs, chatty, sections, s2i)
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in appendrow
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in <listcomp>
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in <genexpr>
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                          ~~~^^^^^
KeyError: '1'

And when I use oq nrml_to gpkg sm_m6_sta.xml

INFO:root:Reading sm_m6_sta.xml

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Scripts\oq.exe\__main__.py", line 7, in <module>
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\commands\__main__.py", line 48, in oq
    sap.run(commands, prog='oq')
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 212, in run
    return _run(parser(funcdict, **parserkw), argv)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\baselib\sap.py", line 203, in _run
    return func(**dic)
           ^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 250, in convert_to
    appendrow(row, srcs, chatty, sections, s2i)
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in appendrow
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in <listcomp>
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\zhuji\AppData\Local\Programs\OpenQuake Engine\python3\Lib\site-packages\openquake\hazardlib\nrml_to.py", line 106, in <genexpr>
    rupture_idxs = [tuple(s2i[idx] for idx in idxs)
                          ~~~^^^^^
KeyError: '813'

Best regards, 

Chen Xiang

Anirudh Rao <aniru...@globalquakemodel.org> 于2024年8月30日周五 16:32写道:
--
You received this message because you are subscribed to the Google Groups "OpenQuake Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openquake-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openquake-users/2f90eeb0-3ce7-4bbd-b11c-0a568578d5bdn%40googlegroups.com.

Michele Simionato

unread,
Sep 1, 2024, 11:12:15 PM9/1/24
to OpenQuake Users
The command `oq nrml_to gpkg` does NOT work for all kind of sources, in particular it does not work for the multifault sources which are part of the China model.
Fixing it is hard and not in the near term plans. If your final goal is just to plot the sources, the engine is able to do that, even for multifault sources, but only in master,
not in the released version (yet).

        Michele

On Friday, August 30, 2024 at 10:22:35 AM UTC+2 chenxi...@gmail.com wrote:
Reply all
Reply to author
Forward
0 new messages