diff --git a/parser/.DS_Store b/parser/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..89eb9969aee1ee3a5473b17f3b7ba299bca52d8c Binary files /dev/null and b/parser/.DS_Store differ diff --git a/parser/parser-dftb+/parser_dftb+.py b/parser/parser-dftb+/parser_dftb+.py new file mode 100644 index 0000000000000000000000000000000000000000..0795d0d8c7b9b829e9018c20ed592076330793cd --- /dev/null +++ b/parser/parser-dftb+/parser_dftb+.py @@ -0,0 +1,34 @@ +import setup_paths +from nomadcore.simple_parser import SimpleMatcher, mainFunction +from nomadcore.local_meta_info import loadJsonFile, InfoKindEl +import os, sys, json + +# description of the input +mainFileDescription = SimpleMatcher(name = 'root', + weak = True, + startReStr = "", + subMatchers = [ + SimpleMatcher(name = 'newRun', + startReStr = r"\s*# SampleParser #\s*", + repeats = True, + required = True, + forwardMatch = True, + sections = ['section_run'], + subMatchers = [ + SimpleMatcher(name = 'header', + startReStr = r"\s*# SampleParser #\s*") + ]) + ]) + +# loading metadata from nomad-meta-info/meta_info/nomad_meta_info/fhi_aims.nomadmetainfo.json + +parserInfo = { + "name": "sample_parser", + "version": "1.0" +} + +metaInfoPath = os.path.normpath(os.path.join(os.path.dirname(os.path.abspath(__file__)),"../../../../nomad-meta-info/meta_info/nomad_meta_info/sample_parser.nomadmetainfo.json")) +metaInfoEnv, warnings = loadJsonFile(filePath = metaInfoPath, dependencyLoader = None, extraArgsHandling = InfoKindEl.ADD_EXTRA_ARGS, uri = None) + +if __name__ == "__main__": + mainFunction(mainFileDescription, metaInfoEnv, parserInfo) diff --git a/parser/parser-dftb+/setup_paths.py b/parser/parser-dftb+/setup_paths.py new file mode 100644 index 0000000000000000000000000000000000000000..e0a0fb009256a0d4056e81c12e82d15bfd3ea7c4 --- /dev/null +++ b/parser/parser-dftb+/setup_paths.py @@ -0,0 +1,6 @@ +import sys, os, os.path +baseDir = os.path.dirname(os.path.abspath(__file__)) +commonDir = os.path.normpath(os.path.join(baseDir,"../../../../python-common/common/python")) + +if not commonDir in sys.path: + sys.path.insert(0, commonDir) diff --git a/test/.DS_Store b/test/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..65267a919194138c52ad60b7390d4d1bbf7c55b0 Binary files /dev/null and b/test/.DS_Store differ diff --git a/test/examples/README.md b/test/examples/README.md new file mode 100644 index 0000000000000000000000000000000000000000..aee68a4b42fbe40eef7063285ab0f6a905d4d89c --- /dev/null +++ b/test/examples/README.md @@ -0,0 +1 @@ +sample files to test the parser