Skip to content

Commit

Permalink
Merge pull request #37 from yoctoyotta1024/newobs
Browse files Browse the repository at this point in the history
Major re-writing of Observers and Zarr Libraries :)
  • Loading branch information
yoctoyotta1024 authored Apr 9, 2024
2 parents 1771a48 + 535cbc8 commit 9caa2e2
Show file tree
Hide file tree
Showing 134 changed files with 3,849 additions and 3,667 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,4 @@ build
bin
docs/source/_autosummary
examples/examplesolutions/
roughpaper/share
2 changes: 1 addition & 1 deletion docs/doxygen/doxygen.dox
Original file line number Diff line number Diff line change
Expand Up @@ -949,7 +949,7 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.

INPUT = ../libs/runcleo/ ../libs/superdrops/
INPUT = ../libs/runcleo/ ../libs/superdrops/ ../libs/zarr2/ ../libs/observers2/

# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
Expand Down
4 changes: 3 additions & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
Author: Clara Bayley (CB)
Additional Contributors:
-----
Last Modified: Monday 12th February 2024
Last Modified: Wednesday 27th March 2024
Modified By: CB
-----
License: BSD 3-Clause "New" or "Revised" License
Expand Down Expand Up @@ -76,6 +76,8 @@
breathe_projects = {
"runcleo" : "../build/doxygen/xml/",
"superdrops" : "../build/doxygen/xml/",
"zarr2" : "../build/doxygen/xml/",
"observers2" : "../build/doxygen/xml/",
}

breathe_default_project = 'proj'
Expand Down
2 changes: 2 additions & 0 deletions docs/source/cxx/cxx.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ a SDM coupled to a Dynamics Solver.

runcleo/runcleomod
superdrops/superdropsmod
zarr2/zarr2mod
observers2/observers2mod

Indices and tables
------------------
Expand Down
35 changes: 35 additions & 0 deletions docs/source/cxx/observers2/observers.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
Observers
=========

Header file: ``<libs/observers2/observers.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/observers2/observers.hpp>`_

.. doxygenconcept:: Observer
:project: observers2

.. doxygenstruct:: CombinedObserver
:project: observers2
:private-members:
:protected-members:
:members:
:undoc-members:

.. doxygenfunction:: operator>>(const Observer auto obs1, const Observer auto obs2)
:project: observers2

.. doxygenstruct:: NullObserver
:project: observers2
:private-members:
:protected-members:
:members:
:undoc-members:

.. doxygenconcept:: ObsFuncs
:project: observers2

.. doxygenstruct:: ConstTstepObserver
:project: observers2
:private-members:
:protected-members:
:members:
:undoc-members:
16 changes: 16 additions & 0 deletions docs/source/cxx/observers2/observers2mod.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
.. CLEO C++ documentation master file, created by
sphinx-quickstart on Mon Nov 20 12:27:54 2023.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Observers Module
================

This module of CLEO contains the all the implementation of observers for outputing data from CLEO,
e.g. to a dataset or to a computer screen.

.. toctree::
:maxdepth: 1
:caption: Contents:

observers
2 changes: 1 addition & 1 deletion docs/source/cxx/superdrops/microphysical_process.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Header file: ``<libs/superdrops/microphysicalprocess.hpp>``
:members:
:undoc-members:

.. doxygenfunction:: operator>>
.. doxygenfunction:: operator>>(const MicrophysicalProcess auto a, const MicrophysicalProcess auto b)
:project: superdrops

.. doxygenstruct:: NullMicrophysicalProcess
Expand Down
12 changes: 12 additions & 0 deletions docs/source/cxx/zarr2/buffer.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Buffer
======

Header file: ``<libs/zarr2/buffer.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/buffer.hpp>`_

.. doxygenstruct:: Buffer
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
18 changes: 18 additions & 0 deletions docs/source/cxx/zarr2/chunks.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Chunks
======

Header file: ``<libs/zarr2/chunks.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/chunks.hpp>`_

.. doxygenfunction:: vec_product(const std::vector<size_t>& vec)
:project: zarr2

.. doxygenfunction:: vec_product(const std::vector<size_t>& vec, const size_t aa)
:project: zarr2

.. doxygenclass:: Chunks
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
12 changes: 12 additions & 0 deletions docs/source/cxx/zarr2/dataset.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
Dataset
=======

Header file: ``<libs/zarr2/dataset.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/dataset.hpp>`_

.. doxygenclass:: Dataset
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
12 changes: 12 additions & 0 deletions docs/source/cxx/zarr2/fsstore.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
FSStore
=======

Header file: ``<libs/zarr2/fsstore.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/fsstore.hpp>`_

.. doxygenclass:: FSStore
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
12 changes: 12 additions & 0 deletions docs/source/cxx/zarr2/store_accessor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
StoreAccessor
=============

Header file: ``<libs/zarr2/store_accessor.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/store_accessor.hpp>`_

.. doxygenstruct:: StoreAccessor
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
24 changes: 24 additions & 0 deletions docs/source/cxx/zarr2/xarray_zarr_array.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
XarrayZarrArray
===============

Header file: ``<libs/zarr2/xarray_zarr_array.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/xarray_zarr_array.hpp>`_

.. doxygenfunction:: write_zattrs_json
:project: zarr2

.. doxygenfunction:: reduced_arrayshape_from_dims
:project: zarr2

.. doxygenfunction:: vecstr_to_string
:project: zarr2

.. doxygenfunction:: make_xarray_metadata
:project: zarr2

.. doxygenclass:: XarrayZarrArray
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
23 changes: 23 additions & 0 deletions docs/source/cxx/zarr2/zarr2mod.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
.. CLEO C++ documentation master file, created by
sphinx-quickstart on Mon Nov 20 12:27:54 2023.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Zarr Module
===========

This module of CLEO contains the all the implementation of writing Zarr arrays to a dataset in
a store which can be Xarray and NetCDF compatible.

.. toctree::
:maxdepth: 1
:caption: Contents:

buffer
chunks
dataset
fsstore
store_accessor
xarray_zarr_array
zarr_array
zarr_group
24 changes: 24 additions & 0 deletions docs/source/cxx/zarr2/zarr_array.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
ZarrArray
=========

Header file: ``<libs/zarr2/zarr_array.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/zarr_array.hpp>`_

.. doxygenfunction:: good2Dchunkshape
:project: zarr2

.. doxygenfunction:: write_zarray_json
:project: zarr2

.. doxygenfunction:: vec_to_string
:project: zarr2

.. doxygenfunction:: make_part_zarrmetadata
:project: zarr2

.. doxygenclass:: ZarrArray
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
12 changes: 12 additions & 0 deletions docs/source/cxx/zarr2/zarr_group.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
ZarrGroup
=========

Header file: ``<libs/zarr2/zarr_group.hpp>``
`[source] <https://github.com/yoctoyotta1024/CLEO/blob/main/libs/zarr2/zarr_group.hpp>`_

.. doxygenstruct:: ZarrGroup
:project: zarr2
:private-members:
:protected-members:
:members:
:undoc-members:
2 changes: 2 additions & 0 deletions docs/source/usage/requirements.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
Requirements
============

TODO(CB) update requirements with micromambda package installer advice

The following requirements ensure CLEO's build, compilation and
execution on DKRZ's Levante HPC. If they do not work,
please :ref:`contact us <contact>` or `open a new
Expand Down
2 changes: 1 addition & 1 deletion environment.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: enviropy3
name: cleoenv
dependencies:
- python>=3.9
- pytest
Expand Down
Loading

0 comments on commit 9caa2e2

Please sign in to comment.