diff --git a/master/.buildinfo b/master/.buildinfo index ccaaecd4..7462c5a3 100644 --- a/master/.buildinfo +++ b/master/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 6b5f90f0b5671968924fbce002664559 +config: e6e7f2cb025ce9c36c1242f909ff6304 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/master/.doctrees/apidoc/yadg.dgutils.doctree b/master/.doctrees/apidoc/yadg.dgutils.doctree index aee6dfe8..4c9bf512 100644 Binary files a/master/.doctrees/apidoc/yadg.dgutils.doctree and b/master/.doctrees/apidoc/yadg.dgutils.doctree differ diff --git a/master/.doctrees/apidoc/yadg.doctree b/master/.doctrees/apidoc/yadg.doctree index 065b66ea..c5c771b3 100644 Binary files a/master/.doctrees/apidoc/yadg.doctree and b/master/.doctrees/apidoc/yadg.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.agilent.doctree b/master/.doctrees/apidoc/yadg.extractors.agilent.doctree new file mode 100644 index 00000000..60298a86 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.agilent.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.basic.doctree b/master/.doctrees/apidoc/yadg.extractors.basic.doctree new file mode 100644 index 00000000..9a7e7888 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.basic.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.doctree b/master/.doctrees/apidoc/yadg.extractors.doctree index d39c14ae..ab680ae9 100644 Binary files a/master/.doctrees/apidoc/yadg.extractors.doctree and b/master/.doctrees/apidoc/yadg.extractors.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.drycal.doctree b/master/.doctrees/apidoc/yadg.extractors.drycal.doctree new file mode 100644 index 00000000..8636a3ae Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.drycal.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.eclab.common.doctree b/master/.doctrees/apidoc/yadg.extractors.eclab.common.doctree new file mode 100644 index 00000000..5bf810cc Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.eclab.common.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.eclab.doctree b/master/.doctrees/apidoc/yadg.extractors.eclab.doctree new file mode 100644 index 00000000..fc41aab1 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.eclab.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.empalc.doctree b/master/.doctrees/apidoc/yadg.extractors.empalc.doctree new file mode 100644 index 00000000..0a2afb26 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.empalc.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.example.doctree b/master/.doctrees/apidoc/yadg.extractors.example.doctree new file mode 100644 index 00000000..65e9387b Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.example.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.ezchrom.doctree b/master/.doctrees/apidoc/yadg.extractors.ezchrom.doctree new file mode 100644 index 00000000..44e0a7dd Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.ezchrom.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.fhimcpt.doctree b/master/.doctrees/apidoc/yadg.extractors.fhimcpt.doctree new file mode 100644 index 00000000..32e75d7a Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.fhimcpt.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.fusion.doctree b/master/.doctrees/apidoc/yadg.extractors.fusion.doctree new file mode 100644 index 00000000..1309c52f Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.fusion.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.panalytical.doctree b/master/.doctrees/apidoc/yadg.extractors.panalytical.doctree new file mode 100644 index 00000000..df0d0048 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.panalytical.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.phi.doctree b/master/.doctrees/apidoc/yadg.extractors.phi.doctree new file mode 100644 index 00000000..11eb266b Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.phi.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.quadstar.doctree b/master/.doctrees/apidoc/yadg.extractors.quadstar.doctree new file mode 100644 index 00000000..efa6dba9 Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.quadstar.doctree differ diff --git a/master/.doctrees/apidoc/yadg.extractors.tomato.doctree b/master/.doctrees/apidoc/yadg.extractors.tomato.doctree new file mode 100644 index 00000000..2940719e Binary files /dev/null and b/master/.doctrees/apidoc/yadg.extractors.tomato.doctree differ diff --git a/master/.doctrees/environment.pickle b/master/.doctrees/environment.pickle index 476bd1aa..67a0641d 100644 Binary files a/master/.doctrees/environment.pickle and b/master/.doctrees/environment.pickle differ diff --git a/master/.doctrees/extractors.doctree b/master/.doctrees/extractors.doctree index 0d24de49..f5e674bb 100644 Binary files a/master/.doctrees/extractors.doctree and b/master/.doctrees/extractors.doctree differ diff --git a/master/.doctrees/index.doctree b/master/.doctrees/index.doctree index f33d563b..850f0258 100644 Binary files a/master/.doctrees/index.doctree and b/master/.doctrees/index.doctree differ diff --git a/master/_sources/apidoc/yadg.dgutils.rst.txt b/master/_sources/apidoc/yadg.dgutils.rst.txt index 26d4577c..f0ac9873 100644 --- a/master/_sources/apidoc/yadg.dgutils.rst.txt +++ b/master/_sources/apidoc/yadg.dgutils.rst.txt @@ -6,8 +6,6 @@ yadg.dgutils package :undoc-members: :show-inheritance: -Submodules ----------- .. automodule:: yadg.dgutils.btools @@ -22,6 +20,12 @@ Submodules :show-inheritance: +.. automodule:: yadg.dgutils.dsutils + :members: + :undoc-members: + :show-inheritance: + + .. automodule:: yadg.dgutils.helpers :members: :undoc-members: @@ -34,7 +38,7 @@ Submodules :show-inheritance: -.. automodule:: yadg.dgutils.utils +.. automodule:: yadg.dgutils.schemautils :members: :undoc-members: :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.agilent.rst.txt b/master/_sources/apidoc/yadg.extractors.agilent.rst.txt new file mode 100644 index 00000000..37ba3615 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.agilent.rst.txt @@ -0,0 +1,26 @@ +**agilent**: For Agilent chromatograms +====================================== + +.. automodule:: yadg.extractors.agilent + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.agilent.ch + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.agilent.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.agilent.dx + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.basic.rst.txt b/master/_sources/apidoc/yadg.extractors.basic.rst.txt new file mode 100644 index 00000000..1ca3a308 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.basic.rst.txt @@ -0,0 +1,14 @@ +**basic**: For tabulated data +============================= + +.. automodule:: yadg.extractors.basic + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.basic.csv + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.drycal.rst.txt b/master/_sources/apidoc/yadg.extractors.drycal.rst.txt new file mode 100644 index 00000000..4e869a36 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.drycal.rst.txt @@ -0,0 +1,32 @@ +**drycal**: For MesaLabs Drycal Pro data +======================================== + +.. automodule:: yadg.extractors.drycal + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.drycal.common + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.drycal.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.drycal.rtf + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.drycal.txt + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.eclab.common.rst.txt b/master/_sources/apidoc/yadg.extractors.eclab.common.rst.txt new file mode 100644 index 00000000..e187ff54 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.eclab.common.rst.txt @@ -0,0 +1,26 @@ +yadg.extractors.eclab.common package +==================================== + +.. automodule:: yadg.extractors.eclab.common + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.eclab.common.mpr_columns + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.eclab.common.mpt_columns + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.eclab.common.techniques + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.eclab.rst.txt b/master/_sources/apidoc/yadg.extractors.eclab.rst.txt new file mode 100644 index 00000000..ea72a867 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.eclab.rst.txt @@ -0,0 +1,28 @@ +**eclab**: For BioLogic data files +================================== + +.. automodule:: yadg.extractors.eclab + :members: + :undoc-members: + :show-inheritance: + +Subpackages +----------- + +.. toctree:: + :maxdepth: 4 + + yadg.extractors.eclab.common + + + +.. automodule:: yadg.extractors.eclab.mpr + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.eclab.mpt + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.empalc.rst.txt b/master/_sources/apidoc/yadg.extractors.empalc.rst.txt new file mode 100644 index 00000000..17779def --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.empalc.rst.txt @@ -0,0 +1,20 @@ +**empalc**: For Empa's LC data +============================== + +.. automodule:: yadg.extractors.empalc + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.empalc.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.empalc.xlsx + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.example.rst.txt b/master/_sources/apidoc/yadg.extractors.example.rst.txt new file mode 100644 index 00000000..728b3705 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.example.rst.txt @@ -0,0 +1,7 @@ +**example**: For yadg testing +============================= + +.. automodule:: yadg.extractors.example + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.ezchrom.rst.txt b/master/_sources/apidoc/yadg.extractors.ezchrom.rst.txt new file mode 100644 index 00000000..21d10b35 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.ezchrom.rst.txt @@ -0,0 +1,14 @@ +**ezchrom**: For EZChrom chromatograms +====================================== + +.. automodule:: yadg.extractors.ezchrom + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.ezchrom.asc + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.fhimcpt.rst.txt b/master/_sources/apidoc/yadg.extractors.fhimcpt.rst.txt new file mode 100644 index 00000000..48eb53a7 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.fhimcpt.rst.txt @@ -0,0 +1,20 @@ +**fhimcpt**: For MCPT set-up at FHI +=================================== + +.. automodule:: yadg.extractors.fhimcpt + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.fhimcpt.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.fhimcpt.vna + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.fusion.rst.txt b/master/_sources/apidoc/yadg.extractors.fusion.rst.txt new file mode 100644 index 00000000..aa2a35bd --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.fusion.rst.txt @@ -0,0 +1,26 @@ +**fusion**: For Fusion chromatograms +==================================== + +.. automodule:: yadg.extractors.fusion + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.fusion.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.fusion.json + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.fusion.zip + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.panalytical.rst.txt b/master/_sources/apidoc/yadg.extractors.panalytical.rst.txt new file mode 100644 index 00000000..dad755ed --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.panalytical.rst.txt @@ -0,0 +1,32 @@ +**panalytical**: For Panalytical XRD data +========================================= + +.. automodule:: yadg.extractors.panalytical + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.panalytical.common + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.panalytical.csv + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.panalytical.xrdml + :members: + :undoc-members: + :show-inheritance: + + +.. automodule:: yadg.extractors.panalytical.xy + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.phi.rst.txt b/master/_sources/apidoc/yadg.extractors.phi.rst.txt new file mode 100644 index 00000000..8b51d2d4 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.phi.rst.txt @@ -0,0 +1,14 @@ +**phi**: For Phi XPS data +========================= + +.. automodule:: yadg.extractors.phi + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.phi.spe + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.quadstar.rst.txt b/master/_sources/apidoc/yadg.extractors.quadstar.rst.txt new file mode 100644 index 00000000..5427c586 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.quadstar.rst.txt @@ -0,0 +1,14 @@ +**quadstar**: For Quadstar MS data +================================== + +.. automodule:: yadg.extractors.quadstar + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.quadstar.sac + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.extractors.rst.txt b/master/_sources/apidoc/yadg.extractors.rst.txt index 4dad43ec..13baa1fd 100644 --- a/master/_sources/apidoc/yadg.extractors.rst.txt +++ b/master/_sources/apidoc/yadg.extractors.rst.txt @@ -12,5 +12,16 @@ Subpackages .. toctree:: :maxdepth: 4 - yadg.extractors.custom - yadg.extractors.public + yadg.extractors.agilent + yadg.extractors.basic + yadg.extractors.drycal + yadg.extractors.eclab + yadg.extractors.empalc + yadg.extractors.example + yadg.extractors.ezchrom + yadg.extractors.fhimcpt + yadg.extractors.fusion + yadg.extractors.panalytical + yadg.extractors.phi + yadg.extractors.quadstar + yadg.extractors.tomato diff --git a/master/_sources/apidoc/yadg.extractors.tomato.rst.txt b/master/_sources/apidoc/yadg.extractors.tomato.rst.txt new file mode 100644 index 00000000..adc9f4a0 --- /dev/null +++ b/master/_sources/apidoc/yadg.extractors.tomato.rst.txt @@ -0,0 +1,14 @@ +**tomato**: For tomato outputs +============================== + +.. automodule:: yadg.extractors.tomato + :members: + :undoc-members: + :show-inheritance: + + + +.. automodule:: yadg.extractors.tomato.json + :members: + :undoc-members: + :show-inheritance: diff --git a/master/_sources/apidoc/yadg.rst.txt b/master/_sources/apidoc/yadg.rst.txt index fbd20ad7..d519c854 100644 --- a/master/_sources/apidoc/yadg.rst.txt +++ b/master/_sources/apidoc/yadg.rst.txt @@ -14,10 +14,7 @@ Subpackages yadg.dgutils yadg.extractors - yadg.parsers -Submodules ----------- .. automodule:: yadg.core diff --git a/master/_sources/extractors.rst.txt b/master/_sources/extractors.rst.txt index 09d8e851..59994da7 100644 --- a/master/_sources/extractors.rst.txt +++ b/master/_sources/extractors.rst.txt @@ -4,12 +4,5 @@ :hidden: :glob: - apidoc/yadg.extractors.public.* - -.. toctree:: - :maxdepth: 1 - :caption: yadg custom extractors - :hidden: - :glob: - - apidoc/yadg.extractors.custom.* \ No newline at end of file + apidoc/yadg.extractors.example + apidoc/yadg.extractors.* \ No newline at end of file diff --git a/master/apidoc/yadg.dgutils.html b/master/apidoc/yadg.dgutils.html index a0a4d8c3..424e2059 100644 --- a/master/apidoc/yadg.dgutils.html +++ b/master/apidoc/yadg.dgutils.html @@ -57,22 +57,20 @@

yadg extractors

-

yadg custom extractors

-

yadg developer manual

  • yadg.extractors package
  • -
  • yadg.parsers package
  • +
  • infer_extractor()
  • +
  • process_schema()
  • +
  • set_loglevel()
  • +
  • run_with_arguments()
  • +
  • process()
  • +
  • update()
  • +
  • preset()
  • +
  • extract()
  • -
  • Submodules
  • @@ -163,7 +173,8 @@
    yadg.dgutils.now(asstr=False, tz=datetime.timezone.utc)

    Wrapper around datetime.now()

    -

    A convenience function for returning the current time as a ISO 8601 or as a unix timestamp.

    +

    A convenience function for returning the current time as a ISO 8601 or as a Unix +timestamp.

    Return type:

    Union[float, str]

    @@ -184,8 +195,8 @@
  • headers (Optional[list]) – An array of strings. If spec is not supplied, must contain either “uts” (float) or “timestep” (str) (conforming to ISO 8601).

  • spec (Optional[TimestampSpec]) – A specification of timestamp elements with associated column indices and -optional formats. Currently accepted combinations of keys are: “uts”; “timestamp”; -“date” and / or “time”.

  • +optional formats. Currently accepted combinations of keys are: “uts”; +“timestamp”; “date” and / or “time”.

  • tz – Timezone to use for conversion. By default, UTC is used.

  • @@ -200,6 +211,32 @@
    +
    +
    +yadg.dgutils.str_to_uts(*, timestamp, timezone, format=None, strict=True)
    +

    Converts a string to POSIX timestamp.

    +

    If the optional format is specified, the timestamp string is processed +using the datetime.datetime.strptime() function; if no format is +supplied, an ISO 8601 format is assumed and an attempt to parse using +dateutil.parser.parse() is made.

    +
    +
    Parameters:
    +
      +
    • timestamp (str) – A string containing the timestamp.

    • +
    • format (Optional[str]) – Optional format string for parsing of the timestamp.

    • +
    • timezone (str) – Optional timezone of the timestamp. By default, “UTC”.

    • +
    • strict (bool) – Whether to re-raise any parsing errors.

    • +
    +
    +
    Returns:
    +

    uts – Returns the POSIX timestamp if successful, otherwise None.

    +
    +
    Return type:
    +

    Union[float, None]

    +
    +
    +
    +
    yadg.dgutils.ole_to_uts(ole_timestamp, timezone)
    @@ -443,6 +480,19 @@
    +
    +
    +yadg.dgutils.complete_uts(ds, filename, externaldate, timezone)
    +

    A helper function ensuring that the Dataset ds contains a dimension "uts", +and that the timestamps in "uts" are completed as instructed in the +externaldate specification.

    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    +
    yadg.dgutils.update_schema(object)
    @@ -512,7 +562,7 @@ yadg.dgutils.sanitize_units(units)

    Unit sanitizer.

    This sanitizer should be used where user-supplied units are likely to occur, -such as in the parsers yadg.parsers.basiccsv. Currently, only two +such as in the parsers yadg.extractors.basic.csv. Currently, only two replacements are done:

      @@ -531,9 +581,39 @@
    -
    -

    Submodules

    +
    +yadg.dgutils.dicts_to_dataset(data, meta, units={}, fulldate=True)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.dgutils.append_dicts(vals, devs, data, meta, fn=None, li=0)
    +
    +
    Return type:
    +

    None

    +
    +
    +
    + +
    +
    +yadg.dgutils.merge_dicttrees(vals, fvals, mode)
    +

    A helper function that merges two DataTree.to_dict() objects by concatenating +the new values in fvals to the existing ones in vals.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    yadg.dgutils.btools.read_pascal_string(pascal_bytes, encoding='windows-1252')

    Parses a length-prefixed string given some encoding.

    @@ -584,7 +664,8 @@
    yadg.dgutils.dateutils.now(asstr=False, tz=datetime.timezone.utc)

    Wrapper around datetime.now()

    -

    A convenience function for returning the current time as a ISO 8601 or as a unix timestamp.

    +

    A convenience function for returning the current time as a ISO 8601 or as a Unix +timestamp.

    Return type:

    Union[float, str]

    @@ -655,8 +736,8 @@
  • headers (Optional[list]) – An array of strings. If spec is not supplied, must contain either “uts” (float) or “timestep” (str) (conforming to ISO 8601).

  • spec (Optional[TimestampSpec]) – A specification of timestamp elements with associated column indices and -optional formats. Currently accepted combinations of keys are: “uts”; “timestamp”; -“date” and / or “time”.

  • +optional formats. Currently accepted combinations of keys are: “uts”; +“timestamp”; “date” and / or “time”.

  • tz – Timezone to use for conversion. By default, UTC is used.

  • @@ -917,6 +998,51 @@
    +
    +
    +yadg.dgutils.dateutils.complete_uts(ds, filename, externaldate, timezone)
    +

    A helper function ensuring that the Dataset ds contains a dimension "uts", +and that the timestamps in "uts" are completed as instructed in the +externaldate specification.

    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.dgutils.dsutils.append_dicts(vals, devs, data, meta, fn=None, li=0)
    +
    +
    Return type:
    +

    None

    +
    +
    +
    + +
    +
    +yadg.dgutils.dsutils.dicts_to_dataset(data, meta, units={}, fulldate=True)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.dgutils.dsutils.merge_dicttrees(vals, fvals, mode)
    +

    A helper function that merges two DataTree.to_dict() objects by concatenating +the new values in fvals to the existing ones in vals.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    +
    yadg.dgutils.helpers.get_yadg_metadata()
    @@ -949,7 +1075,7 @@ yadg.dgutils.pintutils.sanitize_units(units)

    Unit sanitizer.

    This sanitizer should be used where user-supplied units are likely to occur, -such as in the parsers yadg.parsers.basiccsv. Currently, only two +such as in the parsers yadg.extractors.basic.csv. Currently, only two replacements are done:

      @@ -968,9 +1094,9 @@
    -
    -
    -yadg.dgutils.utils.calib_3to4(oldcal, caltype)
    +
    +
    +yadg.dgutils.schemautils.calib_3to4(oldcal, caltype)
    Return type:

    dict

    @@ -979,8 +1105,8 @@
    -
    -yadg.dgutils.utils.schema_3to4(oldschema)
    +
    +yadg.dgutils.schemautils.schema_3to4(oldschema)
    Return type:

    dict

    @@ -989,8 +1115,8 @@
    -
    -yadg.dgutils.utils.update_schema(object)
    +
    +yadg.dgutils.schemautils.update_schema(object)

    The yadg update worker function.

    The main purpose is to allow a simple update pathway from older versions of dataschema files to the current latest and greatest.

    @@ -1016,8 +1142,8 @@
    -
    -yadg.dgutils.utils.schema_from_preset(preset, folder)
    +
    +yadg.dgutils.schemautils.schema_from_preset(preset, folder)
    Return type:

    DataSchema

    @@ -1025,7 +1151,6 @@
    -
    diff --git a/master/apidoc/yadg.extractors.agilent.html b/master/apidoc/yadg.extractors.agilent.html new file mode 100644 index 00000000..0747f03f --- /dev/null +++ b/master/apidoc/yadg.extractors.agilent.html @@ -0,0 +1,685 @@ + + + + + + + agilent: For Agilent chromatograms — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    agilent: For Agilent chromatograms

    +

    Extractors for data files generated by various proprietary Agilent software.

    +

    Extractor of Agilent OpenLab binary signal trace files (.ch and .it). +Currently supports version “179” of the files. Version information is defined in +the magic_values (parameters & metadata) and data_dtypes (data) dictionaries.

    +

    Adapted from ImportAgilent.m and +aston.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Agilent_ch
    +

    +Show JSON schema
    {
    +   "title": "Agilent_ch",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "agilent.ch",
    +            "agilent-ch"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['agilent.ch', 'agilent-ch'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ detector_name }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sampleid: Sample name.

    • +
    • username: User name used to generate the file.

    • +
    • method: Name of the chromatographic method.

    • +
    • version: Version of the CH file (only “179” is currently supported.)

    • +
    +
    +
    +
    +

    Notes on file structure

    +

    The following magic values are used: +.. code

    +
    0x0000 "version magic"
    +0x0108 "data offset"
    +0x011a "x-axis minimum (ms)"
    +0x011e "x-axis maximum (ms)"
    +0x035a "sample ID"
    +0x0559 "description"
    +0x0758 "username"
    +0x0957 "timestamp"
    +0x09e5 "instrument name"
    +0x09bc "inlet"
    +0x0a0e "method"
    +0x104c "y-axis unit"
    +0x1075 "detector name"
    +0x1274 "y-axis intercept"
    +0x127c "y-axis slope"
    +
    +
    +

    Data is stored in a consecutive set of <f8, starting at the offset (calculated +as offset = ("data offset" - 1) * 512) until the end of the file.

    +
    +
    +

    Uncertainties

    +

    Uncertainty in signal is the y-axis slope.

    +

    Uncertainty in elution_time is the x-axis step size.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.agilent.ch.extract(*, fn, timezone, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +

    Extractor of Agilent Chemstation Chromtab tabulated data files. This file format may +include multiple timesteps consisting of several traces each in a single CSV file. It +contains a header section for each timestep, followed by a detector name, and a sequence +of “X, Y” datapoints, which are stored as elution_time and signal.

    +
    +

    Warning

    +

    It is not guaranteed that the X-axis of the chromatogram (i.e. elution_time) is +consistent between the timesteps of the same trace. The traces are expanded to the +length of the longest trace, and the shorter traces are padded with NaNs.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Agilent_csv
    +

    +Show JSON schema
    {
    +   "title": "Agilent_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "agilent.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['agilent.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ detector_name }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sampleid: Sample name.

    • +
    • datafile: Original path of the data file.

    • +
    +
    +
    +
    +

    Uncertainties

    +

    All uncertainties are derived from the string representation of the floats.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.agilent.csv.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +

    Extractor of Agilent OpenLab DX archives. This is a wrapper parser which unzips the +provided DX file, and then uses the yadg.extractors.agilent.ch extractor +to parse every CH file present in the archive. The IT files in the archive are currently +ignored.

    +
    +

    Note

    +

    Currently the timesteps from multiple CH files (if present) are appended in the +timesteps array without any further sorting.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Agilent_ch
    +

    +Show JSON schema
    {
    +   "title": "Agilent_ch",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "agilent.ch",
    +            "agilent-ch"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['agilent.ch', 'agilent-ch'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    +
    +field timezone: str | None = None
    +
    +
    Validated by:
    +
      +
    • timezone_resolve_localtime

    • +
    +
    +
    +
    + +
    +
    +field locale: str | None = None
    +
    +
    Validated by:
    +
      +
    • locale_set_default

    • +
    +
    +
    +
    + +
    +
    +field encoding: str | None = None
    +
    + +
    +
    +field parameters: Any | None = None
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ detector_name }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sampleid: Sample name.

    • +
    • username: User name used to generate the file.

    • +
    • method: Name of the chromatographic method.

    • +
    • version: Version of the CH file (only “179” is currently supported.)

    • +
    +
    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.agilent.dx.extract(*, fn, timezone, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.basic.html b/master/apidoc/yadg.extractors.basic.html new file mode 100644 index 00000000..42062c47 --- /dev/null +++ b/master/apidoc/yadg.extractors.basic.html @@ -0,0 +1,654 @@ + + + + + + + basic: For tabulated data — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    basic: For tabulated data

    +

    Handles the reading and processing of any tabular files, as long as the first line +contains the column headers. The columns of the table must be separated using a +separator such as ,, ;, or \t.

    +
    +

    Note

    +

    By default, the second line of the file should contain the units. Alternatively, +the units can be supplied using extractor parameters, in which case the second line +is considered to be data.

    +
    +

    Since yadg-5.0, the basic.csv extractor handles sparse tables (i.e. tables with +missing data) by back-filling empty cells with np.NaNs.

    +

    The basic.csv extractor attempts to deduce the timestamps from the column headers, +using yadg.dgutils.dateutils.infer_timestamp_from(). Alternatively, the column(s) +containing the timestamp data and their format can be provided using extractor +parameters.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Basic_csv
    +

    +Show JSON schema
    {
    +   "title": "Basic_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "basic.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "$ref": "#/$defs/Parameters"
    +      }
    +   },
    +   "$defs": {
    +      "Parameters": {
    +         "additionalProperties": false,
    +         "properties": {
    +            "sep": {
    +               "default": ",",
    +               "title": "Sep",
    +               "type": "string"
    +            },
    +            "strip": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Strip"
    +            },
    +            "units": {
    +               "anyOf": [
    +                  {
    +                     "additionalProperties": {
    +                        "type": "string"
    +                     },
    +                     "type": "object"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Units"
    +            },
    +            "timestamp": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/Timestamp"
    +                  },
    +                  {
    +                     "$ref": "#/$defs/TimeDate"
    +                  },
    +                  {
    +                     "$ref": "#/$defs/UTS"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Timestamp"
    +            }
    +         },
    +         "title": "Parameters",
    +         "type": "object"
    +      },
    +      "TimeDate": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a separate date and/or time column.",
    +         "properties": {
    +            "date": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            },
    +            "time": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            }
    +         },
    +         "title": "TimeDate",
    +         "type": "object"
    +      },
    +      "Timestamp": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a single timestamp string.",
    +         "properties": {
    +            "timestamp": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "timestamp"
    +         ],
    +         "title": "Timestamp",
    +         "type": "object"
    +      },
    +      "TimestampSpec": {
    +         "additionalProperties": false,
    +         "description": "Specification of the column index and string format of the timestamp.",
    +         "properties": {
    +            "index": {
    +               "anyOf": [
    +                  {
    +                     "type": "integer"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Index"
    +            },
    +            "format": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Format"
    +            }
    +         },
    +         "title": "TimestampSpec",
    +         "type": "object"
    +      },
    +      "UTS": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a Unix timestamp.",
    +         "properties": {
    +            "uts": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "uts"
    +         ],
    +         "title": "UTS",
    +         "type": "object"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +pydantic model Parameters
    +

    +Show JSON schema
    {
    +   "title": "Parameters",
    +   "type": "object",
    +   "properties": {
    +      "sep": {
    +         "default": ",",
    +         "title": "Sep",
    +         "type": "string"
    +      },
    +      "strip": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Strip"
    +      },
    +      "units": {
    +         "anyOf": [
    +            {
    +               "additionalProperties": {
    +                  "type": "string"
    +               },
    +               "type": "object"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Units"
    +      },
    +      "timestamp": {
    +         "anyOf": [
    +            {
    +               "$ref": "#/$defs/Timestamp"
    +            },
    +            {
    +               "$ref": "#/$defs/TimeDate"
    +            },
    +            {
    +               "$ref": "#/$defs/UTS"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timestamp"
    +      }
    +   },
    +   "$defs": {
    +      "TimeDate": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a separate date and/or time column.",
    +         "properties": {
    +            "date": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            },
    +            "time": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            }
    +         },
    +         "title": "TimeDate",
    +         "type": "object"
    +      },
    +      "Timestamp": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a single timestamp string.",
    +         "properties": {
    +            "timestamp": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "timestamp"
    +         ],
    +         "title": "Timestamp",
    +         "type": "object"
    +      },
    +      "TimestampSpec": {
    +         "additionalProperties": false,
    +         "description": "Specification of the column index and string format of the timestamp.",
    +         "properties": {
    +            "index": {
    +               "anyOf": [
    +                  {
    +                     "type": "integer"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Index"
    +            },
    +            "format": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Format"
    +            }
    +         },
    +         "title": "TimestampSpec",
    +         "type": "object"
    +      },
    +      "UTS": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a Unix timestamp.",
    +         "properties": {
    +            "uts": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "uts"
    +         ],
    +         "title": "UTS",
    +         "type": "object"
    +      }
    +   },
    +   "additionalProperties": false
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    +
    +
    +field sep: str = ','
    +

    Separator of table columns.

    +
    + +
    +
    +field strip: str | None = None
    +

    A str of characters to strip from headers & data.

    +
    + +
    +
    +field units: Mapping[str, str] | None = None
    +

    A dict containing column: unit keypairs.

    +
    + +
    +
    +field timestamp: Timestamp | TimeDate | UTS | None = None
    +

    Timestamp specification allowing calculation of Unix timestamp for +each table row.

    +
    + +
    + +
    +
    +field parameters: Parameters [Optional]
    +
    + +
    +
    +field filetype: Literal['basic.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp
    +  data_vars:
    +    {{ headers }}:  (uts)                 # Populated from file headers
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is extracted.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.basic.csv.process_row(headers, items, datefunc, datecolumns)
    +

    A function that processes a row of a table.

    +

    This is the main worker function of basic.csv module, but is often +re-used by any other parser that needs to process tabular data.

    +
    +
    Parameters:
    +
      +
    • headers (list) – A list of headers of the table.

    • +
    • items (list) – A list of values corresponding to the headers. Must be the same length as +headers.

    • +
    • datefunc (Callable) – A function that will generate uts given a list of values.

    • +
    • datecolumns (list[int]) – Column indices that need to be passed to datefunc to generate uts.

    • +
    +
    +
    Returns:
    +

    A tuple of result dictionaries, with the first element containing the values +and the second element containing the uncertainties of the values.

    +
    +
    Return type:
    +

    vals, devs

    +
    +
    +
    + +
    +
    +yadg.extractors.basic.csv.extract(*, fn, encoding, locale, timezone, parameters, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.drycal.html b/master/apidoc/yadg.extractors.drycal.html new file mode 100644 index 00000000..3d049dac --- /dev/null +++ b/master/apidoc/yadg.extractors.drycal.html @@ -0,0 +1,781 @@ + + + + + + + drycal: For MesaLabs Drycal Pro data — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    drycal: For MesaLabs Drycal Pro data

    +

    Extractors for files from MesaLabs DryCal Pro software for Defender flow meters.

    +

    This module includes shared functions for the drycal +extractor, including functions for parsing the files, processing the tabulated data, +and ensuring timestamps are increasing.

    +

    Code author: Peter Kraus

    +
    +
    +pydantic model yadg.extractors.drycal.common.TimeDate
    +

    Bases: BaseModel

    +

    +Show JSON schema
    {
    +   "title": "TimeDate",
    +   "type": "object",
    +   "properties": {
    +      "date": {
    +         "anyOf": [
    +            {
    +               "$ref": "#/$defs/TimestampSpec"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null
    +      },
    +      "time": {
    +         "anyOf": [
    +            {
    +               "$ref": "#/$defs/TimestampSpec"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null
    +      }
    +   },
    +   "$defs": {
    +      "TimestampSpec": {
    +         "additionalProperties": false,
    +         "properties": {
    +            "index": {
    +               "anyOf": [
    +                  {
    +                     "type": "integer"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Index"
    +            },
    +            "format": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Format"
    +            }
    +         },
    +         "title": "TimestampSpec",
    +         "type": "object"
    +      }
    +   }
    +}
    +
    +
    +

    +
    +pydantic model TimestampSpec
    +

    Bases: BaseModel

    +

    +Show JSON schema
    {
    +   "title": "TimestampSpec",
    +   "type": "object",
    +   "properties": {
    +      "index": {
    +         "anyOf": [
    +            {
    +               "type": "integer"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Index"
    +      },
    +      "format": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Format"
    +      }
    +   },
    +   "additionalProperties": false
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    +
    +
    +field index: int | None = None
    +
    + +
    +
    +field format: str | None = None
    +
    + +
    + +
    +
    +field date: TimestampSpec | None = None
    +
    + +
    +
    +field time: TimestampSpec | None = None
    +
    + +
    + +
    +
    +yadg.extractors.drycal.common.rtf(fn, encoding, timezone)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    +
    +yadg.extractors.drycal.common.sep(fn, sep, encoding, timezone)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    +
    +yadg.extractors.drycal.common.drycal_table(lines, sep=',')
    +

    DryCal table-processing function.

    +

    Given a table with headers and units in the first line, and data in the following +lines, this function returns the headers, units, and data extracted from the table. +The returned values are always of (str) type, any post-processing is done +in the calling routine.

    +
    +
    Return type:
    +

    tuple[list, dict, list]

    +
    +
    +
    + +
    +
    +yadg.extractors.drycal.common.check_timestamps(vals)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles the reading and processing of volumetric flow meter data exported from the +MesaLabs DryCal software as a csv file.

    +
    +

    Note

    +

    The date information is missing in the timestamps of the exported files and has to +be supplied externally.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Drycal_csv
    +

    +Show JSON schema
    {
    +   "title": "Drycal_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "drycal.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['drycal.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp, without date
    +  data_vars:
    +    DryCal:         (uts)                 # Standardised flow rate
    +    DryCal Avg.:    (uts)                 # Running average of the flow rate
    +    Temp.:          (uts)                 # Measured flow temperature
    +    Pressure:       (uts)                 # Measured flow pressure
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • product: Model name of the MesaLabs device.

    • +
    • serial number: Serial number of the MesaLabs device.

    • +
    +
    +
    +
    +

    Uncertainties

    +

    All uncertainties are derived from the string representation of the floats.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.drycal.csv.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles the reading and processing of volumetric flow meter data exported from the +MesaLabs DryCal software as a rtf file.

    +
    +

    Note

    +

    The date information is missing in the timestamps of the exported files and has to +be supplied externally. The timestamp in the header of the rtf file corresponds to +the timestamp of export / report generation, not measurement.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Drycal_rtf
    +

    +Show JSON schema
    {
    +   "title": "Drycal_rtf",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "drycal.rtf",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['drycal.rtf'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp, without date
    +  data_vars:
    +    DryCal:         (uts)                 # Standardised flow rate
    +    DryCal Avg.:    (uts)                 # Running average of the flow rate
    +    Temp.:          (uts)                 # Measured flow temperature
    +    Pressure:       (uts)                 # Measured flow pressure
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • product: Model name of the MesaLabs device.

    • +
    • serial number: Serial number of the MesaLabs device.

    • +
    +
    +
    +
    +

    Uncertainties

    +

    All uncertainties are derived from the string representation of the floats.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.drycal.rtf.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles the reading and processing of volumetric flow meter data exported from the +MesaLabs DryCal software as a txt file.

    +
    +

    Note

    +

    The date information is missing in the timestamps of the exported files and has to +be supplied externally.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Drycal_txt
    +

    +Show JSON schema
    {
    +   "title": "Drycal_txt",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "drycal.txt",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['drycal.txt'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp, without date
    +  data_vars:
    +    DryCal:         (uts)                 # Standardised flow rate
    +    DryCal Avg.:    (uts)                 # Running average of the flow rate
    +    Temp.:          (uts)                 # Measured flow temperature
    +    Pressure:       (uts)                 # Measured flow pressure
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • product: Model name of the MesaLabs device.

    • +
    • serial number: Serial number of the MesaLabs device.

    • +
    +
    +
    +
    +

    Uncertainties

    +

    All uncertainties are derived from the string representation of the floats.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.drycal.txt.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.eclab.common.html b/master/apidoc/yadg.extractors.eclab.common.html new file mode 100644 index 00000000..3559026c --- /dev/null +++ b/master/apidoc/yadg.extractors.eclab.common.html @@ -0,0 +1,242 @@ + + + + + + + yadg.extractors.eclab.common package — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    yadg.extractors.eclab.common package

    +
    +

    eclabtechniques: Parameters for implemented techniques.

    +

    Implemented techniques:

    +
    +
      +
    • CA - Chronoamperometry / Chronocoulometry

    • +
    • CP - Chronopotentiometry

    • +
    • CV - Cyclic Voltammetry

    • +
    • GCPL - Galvanostatic Cycling with Potential Limitation

    • +
    • GEIS - Galvano Electrochemical Impedance Spectroscopy

    • +
    • LOOP - Loop

    • +
    • LSV - Linear Sweep Voltammetry

    • +
    • MB - Modulo Bat

    • +
    • OCV - Open Circuit Voltage

    • +
    • PEIS - Potentio Electrochemical Impedance Spectroscopy

    • +
    • WAIT - Wait

    • +
    • ZIR - IR compensation (PEIS)

    • +
    +
    +

    The module also implements resolution determination for parameters of techniques, +in get_resolution().

    +
    +
    +
    +yadg.extractors.eclab.common.techniques.technique_params(technique, settings)
    +

    Constructs the parameter names for different techniques.

    +
    +
    Parameters:
    +
      +
    • technique (str) – The full name of the technique.

    • +
    • settings (list[str]) – The list of settings from the start of an .mpt or .mps file.

    • +
    +
    +
    Returns:
    +

    The short technique name and a full list of technique parameter +names depending on what is present in the file.

    +
    +
    Return type:
    +

    tuple[str, list]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.common.techniques.param_from_key(param, key, to_str=True)
    +

    Convert a supplied key of a certain parameter to its string or float value.

    +

    The function uses the map defined in param_map to convert between the +entries in the tuples, which contain the str value of the parameter +(present in .mpt files), the int value of the parameter (present +in .mpr files), and the corresponding float value in SI units.

    +
    +
    Parameters:
    +
      +
    • param (str) – The name of the parameter, a key within the param_map. If param +is not present in param_map, the supplied key is returned back.

    • +
    • key (Union[int, str]) – The key of the parameter that is to be converted to a different representation.

    • +
    • to_str (bool) – A switch between str and float output.

    • +
    +
    +
    Returns:
    +

    key – The key converted to the requested format.

    +
    +
    Return type:
    +

    Union[str, float, int]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.common.techniques.get_resolution(name, value, unit, Erange, Irange)
    +

    Function that returns the resolution of a property based on its name, value, +E-range and I-range.

    +

    The values used here are hard-coded from VMP-3 potentiostats. Generally, the +resolution is returned, however in some cases only the accuracy is specified +(currently freq and Phase).

    +
    +
    Return type:
    +

    float

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.eclab.html b/master/apidoc/yadg.extractors.eclab.html new file mode 100644 index 00000000..3213f62a --- /dev/null +++ b/master/apidoc/yadg.extractors.eclab.html @@ -0,0 +1,858 @@ + + + + + + + eclab: For BioLogic data files — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    eclab: For BioLogic data files

    +
    +

    Subpackages

    + +

    For processing of BioLogic’s EC-Lab binary modular files.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.EClab_mpr
    +

    +Show JSON schema
    {
    +   "title": "EClab_mpr",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "eclab.mpr",
    +            "biologic-mpr"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['eclab.mpr', 'biologic-mpr'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    + +
    +
    +

    Schema

    +

    The mpr files contain many columns that vary depending on the electrochemical +technique used. Below is shown a list of columns that can be expected to be present +in a typical mpr file.

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float     # Unix timestamp, without date
    +  data_vars:
    +    Ewe             (uts)       # Potential of the working electrode
    +    Ece             (uts)       # Potential of the counter electrode, if present
    +    I               (uts)       # Instantaneous current
    +    time            (uts)       # Time elapsed since the start of the experiment
    +    <Ewe>           (uts)       # Average Ewe potential since last data point
    +    <Ece>           (uts)       # Average Ece potential since last data point
    +    <I>             (uts)       # Average current since last data point
    +    ...
    +
    +
    +
    +

    Note

    +

    Note that in most cases, either the instantaneous or the averaged quantities are +stored - only rarely are both available!

    +
    +
    +
    +

    Notes on file structure

    +

    .mpr files are structured in a set of “modules”, one concerning +settings, one for actual data, one for logs, and an optional loops +module. The parameter sequences can be found in the settings module.

    +

    This code is partly an adaptation of the galvani module by Chris +Kerr, and builds on the work done +by the previous civilian service member working on the project, Jonas Krieger.

    +

    These are the implemented techniques for which the technique parameter +sequences can be parsed:

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    CA

    Chronoamperometry / Chronocoulometry

    CP

    Chronopotentiometry

    CV

    Cyclic Voltammetry

    GCPL

    Galvanostatic Cycling with Potential Limitation

    GEIS

    Galvano Electrochemical Impedance Spectroscopy

    LOOP

    Loop

    LSV

    Linear Sweep Voltammetry

    MB

    Modulo Bat

    OCV

    Open Circuit Voltage

    PEIS

    Potentio Electrochemical Impedance Spectroscopy

    WAIT

    Wait

    ZIR

    IR compensation (PEIS)

    +

    At a top level, .mpr files are made up of a number of modules, +separated by the MODULE keyword. In all the files I have seen, the +first module is the settings module, followed by the data module, the +log module and then an optional loop module.

    +
    0x0000 BIO-LOGIC MODULAR FILE  # File magic.
    +0x0034 MODULE                  # Module magic.
    +...                            # Module 1.
    +0x???? MODULE                  # Module magic.
    +...                            # Module 2.
    +0x???? MODULE                  # Module magic.
    +...                            # Module 3.
    +0x???? MODULE                  # Module magic.
    +...                            # Module 4.
    +
    +
    +

    After splitting the entire file on MODULE, each module starts with a +header that is structured like this (offsets from start of module):

    +
    0x0000 short_name  # Short name, e.g. VMP Set.
    +0x000A long_name   # Longer name, e.g. VMP settings.
    +0x0023 length      # Number of bytes in module data.
    +0x0027 version     # Module version.
    +0x002B date        # Acquisition date in ASCII, e.g. 08/10/21.
    +...                # Module data.
    +
    +
    +

    The contents of each module’s data vary wildly depending on the used +technique, the module and perhaps the software version, the settings in +EC-Lab, etc. Here a quick overview (offsets from start of module data).

    +

    Settings Module

    +
    0x0000 technique_id           # Unique technique ID.
    +...                           # ???
    +0x0007 comments               # Pascal string.
    +...                           # Zero padding.
    +# Cell Characteristics.
    +0x0107 active_material_mass   # Mass of active material
    +0x010B at_x                   # at x =
    +0x010F molecular_weight       # Molecular weight of active material
    +0x0113 atomic_weight          # Atomic weight of intercalated ion
    +0x0117 acquisition_start      # Acquisition started a: xo =
    +0x011B e_transferred          # Number of e- transferred
    +0x011E electrode_material     # Pascal string.
    +...                           # Zero Padding
    +0x01C0 electrolyte            # Pascal string.
    +...                           # Zero Padding, ???.
    +0x0211 electrode_area         # Electrode surface area
    +0x0215 reference_electrode    # Pascal string
    +...                           # Zero padding
    +0x024C characteristic_mass    # Characteristic mass
    +...                           # ???
    +0x025C battery_capacity       # Battery capacity C =
    +0x0260 battery_capacity_unit  # Unit of the battery capacity.
    +...                           # ???
    +# Technique parameters can randomly be found at 0x0572, 0x1845 or
    +# 0x1846. All you can do is guess and try until it fits.
    +0x1845 ns                     # Number of sequences.
    +0x1847 n_params               # Number of technique parameters.
    +0x1849 params                 # ns sets of n_params parameters.
    +...                           # ???
    +
    +
    +

    Data Module

    +
    0x0000 n_datapoints  # Number of datapoints.
    +0x0004 n_columns     # Number of values per datapoint.
    +0x0005 column_ids    # n_columns unique column IDs.
    +...
    +# Depending on module version, datapoints start 0x0195 or 0x0196.
    +# Length of each datapoint depends on number and IDs of columns.
    +0x0195 datapoints    # n_datapoints points of data.
    +
    +
    +

    Log Module

    +
    ...                         # ???
    +0x0009 channel_number       # Zero-based channel number.
    +...                         # ???
    +0x00AB channel_sn           # Channel serial number.
    +...                         # ???
    +0x01F8 Ewe_ctrl_min         # Ewe ctrl range min.
    +0x01FC Ewe_ctrl_max         # Ewe ctrl range max.
    +...                         # ???
    +0x0249 ole_timestamp        # Timestamp in OLE format.
    +0x0251 filename             # Pascal String.
    +...                         # Zero padding, ???.
    +0x0351 host                 # IP address of host, Pascal string.
    +...                         # Zero padding.
    +0x0384 address              # IP address / COM port of potentiostat.
    +...                         # Zero padding.
    +0x03B7 ec_lab_version       # EC-Lab version (software)
    +...                         # Zero padding.
    +0x03BE server_version       # Internet server version (firmware)
    +...                         # Zero padding.
    +0x03C5 interpreter_version  # Command interpretor version (firmware)
    +...                         # Zero padding.
    +0x03CF device_sn            # Device serial number.
    +...                         # Zero padding.
    +0x0922 averaging_points     # Smooth data on ... points.
    +...                         # ???
    +
    +
    +

    Loop Module

    +
    0x0000 n_indexes  # Number of loop indexes.
    +0x0004 indexes    # n_indexes indexes at which loops start in data.
    +...               # ???
    +
    +
    +
    +
    +

    Metadata

    +

    The metadata will contain the information from the Settings module. This should +include information about the technique, as well as any explicitly parsed cell +characteristics data specified in EC-Lab.

    +
    +

    TODO

    +

    https://github.com/dgbowl/yadg/issues/12

    +

    The mapping between metadata parameters between .mpr and .mpt files +is not yet complete. In .mpr files, some technique parameters in the settings +module correspond to entries in drop-down lists in EC-Lab. These values are +stored as single-byte values in .mpr files.

    +
    +

    The metadata also contains the infromation from the Log module, which contains +more general parameters, like software, firmware and server versions, channel number, +host address and an acquisition start timestamp in Microsoft OLE format.

    +
    +

    Note

    +

    If the .mpr file contains an ExtDev module (containing parameters +of any external sensors plugged into the device), the log is usually +not present and therefore the full timestamp cannot be calculated.

    +
    +

    Code author: Nicolas Vetsch

    +
    +
    +
    +yadg.extractors.eclab.mpr.process_settings(data)
    +

    Processes the contents of settings modules.

    +
    +
    Parameters:
    +

    data (bytes) – The data to parse through.

    +
    +
    Returns:
    +

    The parsed settings.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.parse_columns(column_ids)
    +

    Puts together column info from a list of data column IDs.

    +
    +

    Note

    +

    The binary layout of the data in the .mpr file is described by a +sequence of column IDs. Some column IDs relate to (flags) which are +all packed into a single byte.

    +
    +
    +
    Parameters:
    +

    column_ids (list[int]) – A list of column IDs.

    +
    +
    Returns:
    +

    The column names, dtypes, units and a dictionary of flag names +and bitmasks.

    +
    +
    Return type:
    +

    tuple[list, list, list, dict]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.process_data(data, version, Eranges, Iranges, controls)
    +

    Processes the contents of data modules.

    +
    +
    Parameters:
    +
      +
    • data (bytes) – The data to parse through.

    • +
    • version (int) – Module version from the data module header.

    • +
    +
    +
    Returns:
    +

    Processed data ([{column -> value}, …, {column -> value}]). If +the column unit is set to None, the value is an int. Otherwise, +the value is a dict with value (“n”), sigma (“s”), and unit +(“u”).

    +
    +
    Return type:
    +

    list[dict]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.process_log(data)
    +

    Processes the contents of log modules.

    +
    +
    Parameters:
    +

    data (bytes) – The data to parse through.

    +
    +
    Returns:
    +

    The parsed log.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.process_loop(data)
    +

    Processes the contents of loop modules.

    +
    +
    Parameters:
    +

    data (bytes) – The data to parse through.

    +
    +
    Returns:
    +

    The parsed loops.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.process_ext(data)
    +

    Processes the contents of external device modules.

    +
    +
    Parameters:
    +

    data (bytes) – The data to parse through.

    +
    +
    Returns:
    +

    The parsed log.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.process_modules(contents)
    +

    Handles the processing of all modules.

    +
    +
    Parameters:
    +

    contents (bytes) – The contents of an .mpr file, minus the file magic.

    +
    +
    Returns:
    +

    The processed settings, data, log, and loop modules. If they are +not present in the provided modules, returns None instead.

    +
    +
    Return type:
    +

    tuple[dict, list, dict, dict]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpr.extract(*, fn, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    For processing of BioLogic’s EC-Lab binary modular files.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.EClab_mpt
    +

    +Show JSON schema
    {
    +   "title": "EClab_mpt",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "eclab.mpt",
    +            "biologic-mpt"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "default": "windows-1252",
    +         "title": "Encoding",
    +         "type": "string"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['eclab.mpt', 'biologic-mpt'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +field encoding: str = 'windows-1252'
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    + +
    +
    +

    Schema

    +

    The .mpt files contain many columns that vary depending on the electrochemical +technique used. Below is shown a list of columns that can be expected to be present +in a typical .mpt file.

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float     # Unix timestamp, without date
    +  data_vars:
    +    Ewe             (uts)       # Potential of the working electrode
    +    Ece             (uts)       # Potential of the counter electrode, if present
    +    I               (uts)       # Instantaneous current
    +    time            (uts)       # Time elapsed since the start of the experiment
    +    <Ewe>           (uts)       # Average Ewe potential since last data point
    +    <Ece>           (uts)       # Average Ece potential since last data point
    +    <I>             (uts)       # Average current since last data point
    +    ...
    +
    +
    +
    +

    Note

    +

    Note that in most cases, either the instantaneous or the averaged quantities are +stored - only rarely are both available!

    +
    +
    +
    +

    Notes on file structure

    +

    These human-readable files are sectioned into headerlines and datalines. +The header part of the .mpt files is made up of information that can be found +in the settings, log and loop modules of the binary .mpr file.

    +

    If no header is present, the timestamps will instead be calculated from +the file’s mtime().

    +
    +
    +

    Metadata

    +

    The metadata will contain the information from the header of the file.

    +
    +

    Note

    +

    The mapping between metadata parameters between .mpr and .mpt files +is not yet complete.

    +
    +

    Code author: Nicolas Vetsch

    +
    +
    +
    +yadg.extractors.eclab.mpt.process_header(lines, timezone)
    +

    Processes the header lines.

    +
    +
    Parameters:
    +

    lines (list[str]) – The header lines, starting at line 3 (which is an empty line), +right after the “Nb header lines : “ line.

    +
    +
    Returns:
    +

    A dictionary containing the settings (and the technique +parameters) and a dictionary containing the loop indexes.

    +
    +
    Return type:
    +

    tuple[dict, dict]

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpt.process_data(lines, Eranges, Iranges, controls)
    +

    Processes the data lines.

    +
    +
    Parameters:
    +

    lines (list[str]) – The data lines, starting right after the last header section. +The first line is an empty line, the column names can be found +on the second line.

    +
    +
    Returns:
    +

    A dictionary containing the datapoints in the format +([{column -> value}, …, {column -> value}]). If the column +unit is set to None, the value is an int. Otherwise, the value +is a dict with value (“n”), sigma (“s”), and unit (“u”).

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.eclab.mpt.extract(*, fn, encoding, locale, timezone, **kwargs)
    +

    Processes EC-Lab human-readable text export files.

    +
    +
    Parameters:
    +
      +
    • fn (str) – The file containing the data to parse.

    • +
    • encoding (str) – Encoding of fn, by default “windows-1252”.

    • +
    • timezone (str) – A string description of the timezone. Default is “UTC”.

    • +
    +
    +
    Returns:
    +

    The full date may not be specified if header is not present.

    +
    +
    Return type:
    +

    xarray.Dataset

    +
    +
    +
    + +
    +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.empalc.html b/master/apidoc/yadg.extractors.empalc.html new file mode 100644 index 00000000..783ec907 --- /dev/null +++ b/master/apidoc/yadg.extractors.empalc.html @@ -0,0 +1,441 @@ + + + + + + + empalc: For Empa’s LC data — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    empalc: For Empa’s LC data

    +

    A custom extractor for processing liquid chromatography data exported from the Agilent +Online LC in the Materials for Energy Conversion lab at Empa.

    +

    Handles processing of the csv version of the structured format produced by Agilent’s +Online LC device at Empa. It contains three sections:

    +
    +
      +
    • metadata section,

    • +
    • table containing sampling information,

    • +
    • table containing analysed chromatography data.

    • +
    +
    +
    +

    Usage

    +

    Available since yadg-4.2.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.EmpaLC_csv
    +

    +Show JSON schema
    {
    +   "title": "EmpaLC_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "empalc.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['empalc.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp
    +    species:        !!str                 # Species name
    +  data_vars:
    +    height:         (uts, species)        # Peak height
    +    area:           (uts, species)        # Integrated peak area
    +    concentration:  (uts, species)        # Peak area with calibration applied
    +    retention time: (uts, species)        # Position of peak maximum
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sequence: Sample / sequence name.

    • +
    • description: A free-form description of the experiment.

    • +
    • username: User name used to generate the file.

    • +
    • datafile: Original path of the result file.

    • +
    • version: Version of the export function used to generate the file.

    • +
    +
    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.empalc.csv.extract(*, fn, encoding, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles processing of the xlsx version of the structured format produced by Agilent’s +Online LC device at Empa. It contains three sections:

    +
    +
      +
    • metadata section,

    • +
    • table containing sampling information,

    • +
    • table containing analysed chromatography data.

    • +
    +
    +
    +

    Usage

    +

    Available since yadg-4.2.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.EmpaLC_xlsx
    +

    +Show JSON schema
    {
    +   "title": "EmpaLC_xlsx",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "empalc.xlsx",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['empalc.xlsx'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp
    +    species:        !!str                 # Species name
    +  data_vars:
    +    height:         (uts, species)        # Peak height
    +    area:           (uts, species)        # Integrated peak area
    +    concentration:  (uts, species)        # Peak area with calibration applied
    +    retention time: (uts, species)        # Position of peak maximum
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sequence: Sample / sequence name.

    • +
    • description: A free-form description of the experiment.

    • +
    • username: User name used to generate the file.

    • +
    • datafile: Original path of the result file.

    • +
    • version: Version of the export function used to generate the file.

    • +
    +
    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.empalc.xlsx.extract(*, fn, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.example.html b/master/apidoc/yadg.extractors.example.html new file mode 100644 index 00000000..f48f5589 --- /dev/null +++ b/master/apidoc/yadg.extractors.example.html @@ -0,0 +1,306 @@ + + + + + + + example: For yadg testing — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    example: For yadg testing

    +

    This is an example extractor, used mainly for testing of the yadg package. +It provides no real functionality.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Example
    +

    +Show JSON schema
    {
    +   "title": "Example",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "example",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "$ref": "#/$defs/Parameters"
    +      }
    +   },
    +   "$defs": {
    +      "Parameters": {
    +         "additionalProperties": true,
    +         "properties": {},
    +         "title": "Parameters",
    +         "type": "object"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +pydantic model Parameters
    +

    +Show JSON schema
    {
    +   "title": "Parameters",
    +   "type": "object",
    +   "properties": {},
    +   "additionalProperties": true
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = allow

    • +
    +
    +
    +
    + +
    +
    +field parameters: Parameters [Optional]
    +
    + +
    +
    +field filetype: Literal['example'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +

    The output schema is only defined for the tomato.json filetype.

    +
    xr.Dataset:
    +  coords:
    +    uts:              !!float      # The current timestamp
    +  data_vars:
    +    {{ param_keys }}  (None)       # All parameter key/value pairs
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is returned.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.example.extract(*, fn, parameters, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.ezchrom.html b/master/apidoc/yadg.extractors.ezchrom.html new file mode 100644 index 00000000..a3624479 --- /dev/null +++ b/master/apidoc/yadg.extractors.ezchrom.html @@ -0,0 +1,296 @@ + + + + + + + ezchrom: For EZChrom chromatograms — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    ezchrom: For EZChrom chromatograms

    +

    Extractors for data files generated by Agilent’s EZChrom software.

    +

    Handles files created using the ASCII export function in the EZChrom software. +This file format includes one timestep with multiple traces for each ASCII file. It +contains a header section, and a sequence of Y datapoints (signal) for each +detector. The X-axis (elution_time) is assumed to be uniform between traces, and +its units have to be deduced from the header.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.EZChrom_asc
    +

    +Show JSON schema
    {
    +   "title": "EZChrom_asc",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "ezchrom.asc",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['ezchrom.asc'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ detector_index }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sampleid: Sample name.

    • +
    • username: User name used to generate the file.

    • +
    • method: Name of the chromatographic method.

    • +
    • version: Version of the CH file (only “179” is currently supported.)

    • +
    +
    +
    +
    +

    Uncertainties

    +

    The uncertainties in signal are derived from the string representation of the float.

    +

    For elution_time, an uncertainty of one X-axis multiplier is used.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.ezchrom.asc.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.fhimcpt.html b/master/apidoc/yadg.extractors.fhimcpt.html new file mode 100644 index 00000000..f00ad461 --- /dev/null +++ b/master/apidoc/yadg.extractors.fhimcpt.html @@ -0,0 +1,687 @@ + + + + + + + fhimcpt: For MCPT set-up at FHI — yadg master documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    fhimcpt: For MCPT set-up at FHI

    +

    A set of custom extractors for processing files generated by the MCPT instrument at FHI, +now in the Risse group at FU Berlin.

    +

    This parser handles the reading and processing of the legacy log files created by +the LabView interface for the MCPT instrument at FHI, now FU Berlin. These files contain +information about the timestamp, temperatures, and inlet / process flows.

    +
    +

    Usage

    +

    Available since yadg-3.0. Deprecated since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.FHI_csv
    +

    +Show JSON schema
    {
    +   "title": "FHI_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "fhimcpt.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "$ref": "#/$defs/Parameters"
    +      }
    +   },
    +   "$defs": {
    +      "Parameters": {
    +         "additionalProperties": false,
    +         "properties": {
    +            "timestamp": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/Timestamp"
    +                  },
    +                  {
    +                     "$ref": "#/$defs/TimeDate"
    +                  },
    +                  {
    +                     "$ref": "#/$defs/UTS"
    +                  }
    +               ],
    +               "default": {
    +                  "timestamp": {
    +                     "format": "%Y-%m-%d-%H-%M-%S",
    +                     "index": 0
    +                  }
    +               },
    +               "title": "Timestamp"
    +            }
    +         },
    +         "title": "Parameters",
    +         "type": "object"
    +      },
    +      "TimeDate": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a separate date and/or time column.",
    +         "properties": {
    +            "date": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            },
    +            "time": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            }
    +         },
    +         "title": "TimeDate",
    +         "type": "object"
    +      },
    +      "Timestamp": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a single timestamp string.",
    +         "properties": {
    +            "timestamp": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "timestamp"
    +         ],
    +         "title": "Timestamp",
    +         "type": "object"
    +      },
    +      "TimestampSpec": {
    +         "additionalProperties": false,
    +         "description": "Specification of the column index and string format of the timestamp.",
    +         "properties": {
    +            "index": {
    +               "anyOf": [
    +                  {
    +                     "type": "integer"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Index"
    +            },
    +            "format": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Format"
    +            }
    +         },
    +         "title": "TimestampSpec",
    +         "type": "object"
    +      },
    +      "UTS": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a Unix timestamp.",
    +         "properties": {
    +            "uts": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "uts"
    +         ],
    +         "title": "UTS",
    +         "type": "object"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +pydantic model Parameters
    +

    +Show JSON schema
    {
    +   "title": "Parameters",
    +   "type": "object",
    +   "properties": {
    +      "timestamp": {
    +         "anyOf": [
    +            {
    +               "$ref": "#/$defs/Timestamp"
    +            },
    +            {
    +               "$ref": "#/$defs/TimeDate"
    +            },
    +            {
    +               "$ref": "#/$defs/UTS"
    +            }
    +         ],
    +         "default": {
    +            "timestamp": {
    +               "format": "%Y-%m-%d-%H-%M-%S",
    +               "index": 0
    +            }
    +         },
    +         "title": "Timestamp"
    +      }
    +   },
    +   "$defs": {
    +      "TimeDate": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a separate date and/or time column.",
    +         "properties": {
    +            "date": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            },
    +            "time": {
    +               "anyOf": [
    +                  {
    +                     "$ref": "#/$defs/TimestampSpec"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null
    +            }
    +         },
    +         "title": "TimeDate",
    +         "type": "object"
    +      },
    +      "Timestamp": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a single timestamp string.",
    +         "properties": {
    +            "timestamp": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "timestamp"
    +         ],
    +         "title": "Timestamp",
    +         "type": "object"
    +      },
    +      "TimestampSpec": {
    +         "additionalProperties": false,
    +         "description": "Specification of the column index and string format of the timestamp.",
    +         "properties": {
    +            "index": {
    +               "anyOf": [
    +                  {
    +                     "type": "integer"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Index"
    +            },
    +            "format": {
    +               "anyOf": [
    +                  {
    +                     "type": "string"
    +                  },
    +                  {
    +                     "type": "null"
    +                  }
    +               ],
    +               "default": null,
    +               "title": "Format"
    +            }
    +         },
    +         "title": "TimestampSpec",
    +         "type": "object"
    +      },
    +      "UTS": {
    +         "additionalProperties": false,
    +         "description": "Timestamp from a column containing a Unix timestamp.",
    +         "properties": {
    +            "uts": {
    +               "$ref": "#/$defs/TimestampSpec"
    +            }
    +         },
    +         "required": [
    +            "uts"
    +         ],
    +         "title": "UTS",
    +         "type": "object"
    +      }
    +   },
    +   "additionalProperties": false
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    +
    +
    +field timestamp: Timestamp | TimeDate | UTS = Timestamp(timestamp=TimestampSpec(index=0, format='%Y-%m-%d-%H-%M-%S'))
    +
    + +
    + +
    +
    +field parameters: Parameters [Optional]
    +
    + +
    +
    +field filetype: Literal['fhimcpt.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float     # Unix timestamp
    +  data_vars:
    +    T_f:            (uts)       # Flow temperature
    +    T_fs:           (uts)       # Flow temperature setpoint
    +    T_fo:           (uts)       # Flow heater duty cycle
    +    T_c:            (uts)       # Cavity temperature
    +    T_cs:           (uts)       # Cavity temperature setpoint
    +    T_co:           (uts)       # Cavity cooling duty cycle
    +    T_cal:          (uts)       # Calibration thermocouple temperature
    +    N2:             (uts)       # N2 flow
    +    O2:             (uts)       # N2 flow
    +    alkane:         (uts)       # alkane flow
    +    CO_CO2:         (uts)       # CO or CO2 flow
    +    saturator:      (uts)       # saturator flow
    +    pressure:       (uts)       # Reactor flow meter back-pressure
    +    flow low:       (uts)       # Reactor mix high-flow MFC
    +    flow high:      (uts)       # Reactor mix low-flow MFC
    +    cavity flush:   (uts)       # Cavity N2 flow
    +    heater flow:    (uts)       # Heater flow
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is returned.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.fhimcpt.csv.extract(*, fn, encoding, timezone, parameters, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Used to process files generated using Agilent PNA-L N5320C via its LabVIEW driver. +This file format includes a header, with the values of bandwidth and averaging, +and three tab-separated columns containing the frequency \(f\), and the real +and imaginary parts of the complex reflection coefficient \(\Gamma(f)\).

    +

    Note that no timestamps are present in the file and have to be supplied externally, +e.g. from the file name. One trace per file. As the MCPT set-up for which this +extractor was designed always uses the S11 port, the node name is is hard-coded to +this value.

    +
    +

    Usage

    +

    Available since yadg-3.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.FHI_vna
    +

    +Show JSON schema
    {
    +   "title": "FHI_vna",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "fhimcpt.vna",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['fhimcpt.vna'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  S11:              !!xarray.Dataset
    +    coords:
    +        freq:       !!float     # An array of measurement frequencies
    +    data_vars:
    +        Re(G):      (freq)      # Real part of Γ
    +        Im(G):      (freq)      # Imaginary part of Γ
    +        average:    (None)      # Number of traces averaged
    +        bandwidth:  (None)      # Filter bandwidth
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is returned.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.fhimcpt.vna.extract(*, fn, encoding, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.fusion.html b/master/apidoc/yadg.extractors.fusion.html new file mode 100644 index 00000000..46202ab6 --- /dev/null +++ b/master/apidoc/yadg.extractors.fusion.html @@ -0,0 +1,590 @@ + + + + + + + fusion: For Fusion chromatograms — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    fusion: For Fusion chromatograms

    +

    For processing Inficon Fusion csv export format (csv). This is a tabulated format, +including the concentrations, mole fractions, peak areas, and retention times.

    +
    +

    Warning

    +

    As also mentioned in the csv files themselves, the use of this filetype +is discouraged, and the json files (or a zipped archive of them) should +be parsed instead.

    +
    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Fusion_csv
    +

    +Show JSON schema
    {
    +   "title": "Fusion_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "fusion.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['fusion.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:                !!float               # Unix timestamp
    +    species:            !!str                 # Species name
    +  data_vars:
    +    area:               (uts, species)        # Integrated peak area
    +    concentration:      (uts, species)        # Calibrated peak area
    +    xout:               (uts, species)        # Mole fraction (normalised conc.)
    +    retention time:     (uts, species)        # Retention time
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • method: Name of the chromatographic method.

    • +
    +
    +
    +
    +

    Uncertainties

    +

    The uncertainties are derived from the string representation of the floats.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.fusion.csv.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    For processing Inficon Fusion json data. Contains both the data from the raw +chromatogram and the post-processed results.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Fusion_json
    +

    +Show JSON schema
    {
    +   "title": "Fusion_json",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "fusion.json",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['fusion.json'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  coords:
    +    uts:              !!float
    +    species:          !!str
    +  data_vars:
    +    height:           (uts, species)        # Peak height at maximum
    +    area:             (uts, species)        # Integrated peak area
    +    concentration:    (uts, species)        # Calibrated peak area
    +    xout:             (uts, species)        # Mole fraction (normalized conc.)
    +    retention time:   (uts, species)        # Peak retention time
    +  {{ detector_name }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +      valve:          (uts)                 # Valve position
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is currently extracted.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.fusion.json.chromdata(jsdata, uts)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.extractors.fusion.json.chromtrace(jsdata, uts)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    +
    +yadg.extractors.fusion.json.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +

    For processing Inficon Fusion zipped data. This is a wrapper parser which unzips the +provided zip file, and then uses the yadg.extractors.fusion.json extractor +to parse every fusion-data file present in the archive.

    +

    Contains both the data from the raw chromatogram and the post-processed results.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Fusion_zip
    +

    +Show JSON schema
    {
    +   "title": "Fusion_zip",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "fusion.zip",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['fusion.zip'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  coords:
    +    uts:              !!float
    +    species:          !!str
    +  data_vars:
    +    height:           (uts, species)        # Peak height at maximum
    +    area:             (uts, species)        # Integrated peak area
    +    concentration:    (uts, species)        # Calibrated peak area
    +    xout:             (uts, species)        # Mole fraction (normalized conc.)
    +    retention time:   (uts, species)        # Peak retention time
    +  {{ detector_name }}:
    +    coords:
    +      uts:            !!float               # Unix timestamp
    +      elution_time:   !!float               # Elution time
    +    data_vars:
    +      signal:         (uts, elution_time)   # Signal data
    +      valve:          (uts)                 # Valve position
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is currently extracted.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.fusion.zip.extract(*, fn, timezone, encoding, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.html b/master/apidoc/yadg.extractors.html index 60b82057..aba35706 100644 --- a/master/apidoc/yadg.extractors.html +++ b/master/apidoc/yadg.extractors.html @@ -22,7 +22,6 @@ - @@ -57,22 +56,20 @@

    yadg extractors

    -

    yadg custom extractors

    -

    yadg developer manual

    -
  • Submodules
  • @@ -143,7 +142,7 @@
    Return type:
    -

    Union[Dataset, DataTree]

    +

    Union[Dataset, DataTree]

    @@ -152,72 +151,354 @@

    Subpackages


    diff --git a/master/apidoc/yadg.extractors.panalytical.html b/master/apidoc/yadg.extractors.panalytical.html new file mode 100644 index 00000000..048c13d9 --- /dev/null +++ b/master/apidoc/yadg.extractors.panalytical.html @@ -0,0 +1,651 @@ + + + + + + + panalytical: For Panalytical XRD data — yadg master documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    panalytical: For Panalytical XRD data

    +

    Extractors for various exports of Panalytical X-ray diffractograms.

    +
    +
    +yadg.extractors.panalytical.common.panalytical_comment(line)
    +

    Processes a comments from the file header into a dictionary.

    +
    +
    Parameters:
    +

    line (str) – A line containing the comment.

    +
    +
    Returns:
    +

    A dictionary containing the processed comment.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.panalytical.common.snake_case(s)
    +

    Converts Sentence case. and camelCase strings to snake_case.

    +

    From https://stackoverflow.com/a/1176023

    +
    +
    Parameters:
    +

    s (str) – The input string to be converted.

    +
    +
    Returns:
    +

    The corresponding snake_case string.

    +
    +
    Return type:
    +

    str

    +
    +
    +
    + +

    Handles processing of csv exports of Panalytical XRD files.

    +
    +

    Usage

    +

    Available since yadg-4.2.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Panalytical_csv
    +

    +Show JSON schema
    {
    +   "title": "Panalytical_csv",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "panalytical.csv",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['panalytical.csv'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp
    +    angle:          !!float               # 2θ angle
    +  data_vars:
    +    intensity:      (uts, angle)          # Measured intensity
    +
    +
    +
    +
    +

    Metadata

    +

    With the exception of the comment, the metadata present in the csv file is extracted +from the file header without post-processing.

    +
    +
    +

    Notes on file structure

    +

    These files are split into a [Measurement conditions] and a [Scan points] +section. The former stores the metadata and the latter all the datapoints.

    +
    +
    +

    Uncertainties

    +

    The uncertainties of "angle" are taken from the number of significant figures.

    +

    The uncertainties of "intensity" are taken from the number of significant figures.

    +

    Code author: Nicolas Vetsch, +Peter Kraus

    +
    +
    +
    +yadg.extractors.panalytical.csv.extract(*, fn, encoding, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles processing of Panalytical XRDML files.

    +
    +

    Usage

    +

    Available since yadg-4.2.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Panalytical_xrdml
    +

    +Show JSON schema
    {
    +   "title": "Panalytical_xrdml",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "panalytical.xrdml",
    +            "panalytical-xrdml"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['panalytical.xrdml', 'panalytical-xrdml'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float               # Unix timestamp
    +    angle:          !!float               # 2θ angle
    +  data_vars:
    +    intensity:      (uts, angle)          # Measured intensity
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • sample: Metadata information about the sample.

    • +
    • wavelength: Measurement wavelength.

    • +
    • comment: A free-form description of the experiment.

    • +
    • incident_beam_path

    • +
    • diffracted_beam_path

    • +
    • counting_time

    • +
    +
    +
    +

    Note

    +

    The returned metadata contain only a subset of the available metadata in the XML +file. If something important is missing, please contact us!

    +
    +
    +
    +

    Notes on file structure

    +

    These are xml-formatted files, which we here parse using the xml.etree +library into a Python dict.

    +

    The angle returned from this parser is based on a linear interpolation of the start +and end point of the scan, and is the \(2\theta\). The values of \(\omega\) +are discarded.

    +
    +
    +

    Uncertainties

    +

    The uncertainties of in "angle" are taken as the step-width of the linearly spaced +\(2\theta\) values.

    +

    The uncertainties of of "intensity" are currently set to a constant +value of 1.0 count as all the supported files seem to produce integer values.

    +

    Code author: Nicolas Vetsch, +Peter Kraus

    +
    +
    +
    +yadg.extractors.panalytical.xrdml.etree_to_dict(e)
    +

    Recursively converts an ElementTree.Element into a dictionary.

    +

    Element attributes are stored into “@”-prefixed attribute keys. +Element text is stored into “#text” for all nodes.

    +

    From https://stackoverflow.com/a/10076823.

    +
    +
    Return type:
    +

    dict

    +
    +
    +
    + +
    +
    +yadg.extractors.panalytical.xrdml.extract(*, fn, timezone, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +

    Handles processing of xy exports of Panalytical XRD files. When possible, the xrdml or +csv files should be used instead.

    +
    +

    Usage

    +

    Available since yadg-4.2.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Panalytical_xy
    +

    +Show JSON schema
    {
    +   "title": "Panalytical_xy",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "panalytical.xy",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['panalytical.xy'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    angle:          !!float               # 2θ angle
    +  data_vars:
    +    intensity:      (angle)          # Measured intensity
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is present in files.

    +
    +
    +

    Notes on file structure

    +

    These files basically just contain the [Scan points] part of Panalytical csv files. +As a consequence, no metadata is recorded, and the format does not have an associated +timestamp.

    +

    Code author: Nicolas Vetsch, +Peter Kraus

    +
    +
    +
    +yadg.extractors.panalytical.xy.extract(*, fn, encoding, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.phi.html b/master/apidoc/yadg.extractors.phi.html new file mode 100644 index 00000000..cc74e7a4 --- /dev/null +++ b/master/apidoc/yadg.extractors.phi.html @@ -0,0 +1,409 @@ + + + + + + + phi: For Phi XPS data — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    phi: For Phi XPS data

    +

    Processing of ULVAC PHI Multipak XPS traces.

    +

    The IGOR .spe import script by +jjweimer was pretty helpful for writing this extractor.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Phi_spe
    +

    +Show JSON schema
    {
    +   "title": "Phi_spe",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "enum": [
    +            "phi.spe",
    +            "phi-spe"
    +         ],
    +         "title": "Filetype",
    +         "type": "string"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +
    +
    +
    +
    +
    +field filetype: Literal['phi.spe', 'phi-spe'] [Required]
    +
    +
    Validated by:
    +
    +
    +
    +
    + +
    +
    +validator warn_deprecated  »  filetype
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ trace_name }}:
    +    coords:
    +      E:            !!float               # Binding energies
    +    data_vars:
    +      y:            (E)                   # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The following metadata is extracted:

    +
    +
      +
    • software_id: ID of the software used to generate the file.

    • +
    • version: Version of the software used to generate the file.

    • +
    • username: User name used to generate the file.

    • +
    +
    +

    Additionally, the processed header data is stored in the metadata under file_header.

    +
    +
    +

    Notes on file structure

    +

    These binary files actually contain an ASCII file header, delimited by +“SOFH +“ and “EOFH +“.

    +

    The binding energies corresponding to the datapoints in the later part +of the file can be found from the “SpectralRegDef” entries in this +header. Each of these entries look something like:

    +
    2 2 F1s 9 161 -0.1250 695.0 675.0 695.0 680.0    0.160000 29.35 AREA
    +
    +
    +

    This maps as follows:

    +
    2           trace_number
    +2           trace_number (again?)
    +F1s         name
    +9           atomic_number
    +161         num_datapoints
    +-0.1250     step
    +695.0       start
    +675.0       stop
    +695.0       ?
    +680.0       ?
    +0.160000    dwell_time
    +29.35       e_pass
    +AREA        description (?)
    +
    +
    +

    After the file header, the binary part starts with a short data header +(offsets given from start of data header):

    +
    0x0000 group                # Data group number.
    +0x0004 num_traces           # Number of traces in file
    +0x0008 trace_header_size    # Combined lengths of all trace headers.
    +0x000c data_header_size     # Length of this data header.
    +
    +
    +

    After this follow num_traces trace headers that are each structured +something like this:

    +
    0x0000 trace_number          # Number of the trace.
    +0x0004 bool_01               # ???
    +0x0008 bool_02               # ???
    +0x000c trace_number_again    # Number of the trace. Again?
    +0x0010 bool_03               # ???
    +0x0014 num_datapoints        # Number of datapoints in trace.
    +0x0018 bool_04               # ???
    +0x001c bool_05               # ???
    +0x0020 string_01             # ???
    +0x0024 string_02             # ???
    +0x0028 string_03             # ???
    +0x002c int_02                # ???
    +0x0030 string_04             # ???
    +0x0034 string_05             # ???
    +0x0038 y_unit                # The unit of the datapoints.
    +0x003c int_05                # ???
    +0x0040 int_06                # ???
    +0x0044 int_07                # ???
    +0x0048 data_dtype            # Data type for datapoints (f4 / f8).
    +0x004c num_data_bytes        # Unsure about this one.
    +0x0050 num_datapoints_tot    # This one as well.
    +0x0054 int_10                # ???
    +0x0058 int_11                # ???
    +0x005c end_of_data           # Byte offset of the end-of-data.
    +
    +
    +

    After the trace headers follow the datapoints. After the number of +datapoints there is a single 32bit float with the trace’s dwelling time +again.

    +
    +
    +

    Uncertainties

    +

    The uncertainties of "E" are taken as the step-width of +the linearly spaced energy values.

    +

    The uncertainties "s" of "y" are currently set to a constant +value of 12.5 counts per second as all the signals in the files seen so +far only seem to take on values in those steps.

    +
    +

    TODO

    +

    https://github.com/dgbowl/yadg/issues/13

    +

    Determining the uncertainty of the counts per second signal in XPS +traces from the phispe parser should be done in a better way.

    +
    +

    Code author: Nicolas Vetsch

    +
    +
    +
    +yadg.extractors.phi.spe.camel_to_snake(s)
    +

    Converts CamelCase strings to snake_case.

    +

    From https://stackoverflow.com/a/1176023

    +
    +
    Parameters:
    +

    s (str) – The CamelCase input string.

    +
    +
    Returns:
    +

    The snake_case equivalent of s.

    +
    +
    Return type:
    +

    str

    +
    +
    +
    + +
    +
    +yadg.extractors.phi.spe.extract(*, fn, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.quadstar.html b/master/apidoc/yadg.extractors.quadstar.html new file mode 100644 index 00000000..391de636 --- /dev/null +++ b/master/apidoc/yadg.extractors.quadstar.html @@ -0,0 +1,344 @@ + + + + + + + quadstar: For Quadstar MS data — yadg master documentation + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    quadstar: For Quadstar MS data

    +

    The sac2dat.c code from Dr. Moritz Bubek +was a really useful stepping stone for this Python file parser.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Quadstar_sac
    +

    +Show JSON schema
    {
    +   "title": "Quadstar_sac",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "quadstar.sac",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['quadstar.sac'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    datatree.DataTree:
    +  {{ trace_index }}:
    +    coords:
    +      uts:              !!float               # Unix timestamp
    +      mass_to_charge:   !!float               # M/Z ratio
    +    data_vars:
    +      fsr:              (None)                # Full scale range
    +      y:                (uts, mass_to_charge) # Signal data
    +
    +
    +
    +
    +

    Metadata

    +

    The “info_position” section in the below structure is stored as metadata for every +trace, without further processing.

    +
    +
    +

    Notes on file structure

    +

    Pretty much the entire file format has been reverse engineered. There +are still one or two unknown fields.

    +
    0x00 "data_index"
    +0x02 "software_id"
    +0x06 "version_major"
    +0x07 "version_minor"
    +0x08 "second"
    +0x09 "minute"
    +0x0a "hour"
    +0x0b "day"
    +0x0c "month"
    +0x0d "year"
    +0x0f "author"
    +0x64 "n_timesteps"
    +0x68 "n_traces"
    +0x6a "timestep_length"
    +...
    +# Not sure what sits from 0x6e to 0xc2.
    +...
    +0xc2 "uts_base_s"
    +0xc6 "uts_base_ms"
    +# Trace header. Read these 9 bytes for every trace (n_traces).
    +0xc8 + (n * 0x09) "type"
    +0xc9 + (n * 0x09) "info_position"
    +0xcd + (n * 0x09) "data_position"
    +...
    +# Trace info. Read these 137 bytes for every trace where type != 0x11.
    +info_position + 0x00 "data_format"
    +info_position + 0x02 "y_title"
    +info_position + 0x0f "y_unit"
    +info_position + 0x1d "x_title"
    +info_position + 0x2a "x_unit"
    +info_position + 0x38 "comment"
    +info_position + 0x7a "first_mass"
    +info_position + 0x7e "scan_width"
    +info_position + 0x80 "values_per_mass"
    +info_position + 0x81 "zoom_start"
    +info_position + 0x85 "zoom_end"
    +...
    +# UTS offset. Read these 6 bytes for every timestep (n_timesteps).
    +0xc2 + (n * timestep_length) "uts_offset_s"
    +0xc6 + (n * timestep_length) "uts_offset_ms"
    +# Read everything remaining below for every timestep and every trace
    +# where type != 0x11.
    +data_position + (n * timestep_length) + 0x00 "n_datapoints"
    +data_position + (n * timestep_length) + 0x04 "data_range"
    +# Datapoints. Read these 4 bytes (scan_width * values_per_mass)
    +# times.
    +data_position + (n * timestep_length) + 0x06 "datapoints"
    +...
    +
    +
    +
    +
    +

    Uncertainties

    +

    Uncertainties in mass_to_charge are set to one step in M/Z spacing.

    +

    Uncertainties in the signal y are either based on the analog-to-digital conversion +(i.e. using the full scale range), or from the upper limit of contribution of +neighboring M/Z points (50 ppm).

    +

    Code author: Nicolas Vetsch

    +
    +
    +
    +yadg.extractors.quadstar.sac.extract(*, fn, **kwargs)
    +
    +
    Return type:
    +

    DataTree

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.extractors.tomato.html b/master/apidoc/yadg.extractors.tomato.html new file mode 100644 index 00000000..7c2a8d42 --- /dev/null +++ b/master/apidoc/yadg.extractors.tomato.html @@ -0,0 +1,334 @@ + + + + + + + tomato: For tomato outputs — yadg master documentation + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +

    tomato: For tomato outputs

    +

    Extractor for files generated by tomato.

    +

    This module parses the files generated by the dummy and biologic devices +within tomato-0.2. As the dummy device has been mainly used for testing, +the below discusses the output of a biologic device.

    +
    +

    Usage

    +

    Available since yadg-4.0.

    +
    +
    +pydantic model dgbowl_schemas.yadg.dataschema_5_1.filetype.Tomato_json
    +

    +Show JSON schema
    {
    +   "title": "Tomato_json",
    +   "type": "object",
    +   "properties": {
    +      "filetype": {
    +         "const": "tomato.json",
    +         "title": "Filetype"
    +      },
    +      "timezone": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Timezone"
    +      },
    +      "locale": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Locale"
    +      },
    +      "encoding": {
    +         "anyOf": [
    +            {
    +               "type": "string"
    +            },
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Encoding"
    +      },
    +      "parameters": {
    +         "anyOf": [
    +            {},
    +            {
    +               "type": "null"
    +            }
    +         ],
    +         "default": null,
    +         "title": "Parameters"
    +      }
    +   },
    +   "additionalProperties": false,
    +   "required": [
    +      "filetype"
    +   ]
    +}
    +
    +
    +

    +
    Config:
    +
      +
    • extra: str = forbid

    • +
    +
    +
    Validators:
    +

    +
    +
    +
    +field filetype: Literal['tomato.json'] [Required]
    +
    + +
    + +
    +
    +

    Schema

    +
    xarray.Dataset:
    +  coords:
    +    uts:            !!float     # Unix timestamp
    +  data_vars:
    +    Ewe:            (uts)       # Potential of the working electrode
    +    Ece:            (uts)       # Potential of the counter electrode, if present
    +    I:              (uts)       # Instantaneous current
    +    technique:      (uts)       # Technique name
    +    loop number:    (uts)       # Loop number  (over techniques)
    +    cycle number:   (uts)       # Cycle number (within technique)
    +    index:          (uts)       # Technique index
    +
    +
    +
    +
    +

    Metadata

    +

    No metadata is extracted.

    +
    +
    +

    Notes on file structure

    +

    The files generated by the dummy driver do not contain the technique, and all +values present in the json files are simply copied over assuming an uncertainty of 0.0.

    +

    For the biologic driver, each tomato data file contains the following four sections:

    +
      +
    • technique section, describing the current technique,

    • +
    • previous section, containing status information of the previous file,

    • +
    • current section, containing status information of the current file,

    • +
    • data section, containing the timesteps.

    • +
    +

    The reason why both previous and current are requires is that the device +status is recorded at the time of data polling, which means the values in current +might be invalid (after the run has finished) or not in sync with the data (if +a technique change happened). However, previous may not be present in the first +data file of an experiment.

    +
    +
    +

    Uncertainties

    +

    To determine the measurement errors, the values from BioLogic manual are used: for +measured voltages (\(E_{\text{we}}\) and \(E_{\text{ce}}\)) this corresponds +to a constant uncertainty of 0.004% of the applied E-range with a maximum of 75 uV, +while for currents (\(I\)) this is a constant uncertainty of 0.0015% of the applied +I-range with a maximum of 0.76 uA.

    +

    Code author: Peter Kraus

    +
    +
    +
    +yadg.extractors.tomato.json.biologic_tomato_json(fn, jsdata)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.extractors.tomato.json.dummy_tomato_json(fn, jsdata)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    +
    +yadg.extractors.tomato.json.extract(*, fn, **kwargs)
    +
    +
    Return type:
    +

    Dataset

    +
    +
    +
    + +
    + + +
    +
    + +
    +
    +
    +
    +
    + + Other Versions + v: master + + +
    + +
    +
    + + + \ No newline at end of file diff --git a/master/apidoc/yadg.html b/master/apidoc/yadg.html index 9dcb128a..b67874dc 100644 --- a/master/apidoc/yadg.html +++ b/master/apidoc/yadg.html @@ -57,22 +57,20 @@

    yadg extractors

    -

    yadg custom extractors

    -

    yadg developer manual