Skip to content

Commit

Permalink
Auto-generated from 509a206
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Oct 23, 2023
1 parent dc15c17 commit 80ad735
Show file tree
Hide file tree
Showing 9 changed files with 1,196 additions and 473 deletions.
492 changes: 481 additions & 11 deletions cf-conventions.html

Large diffs are not rendered by default.

Binary file modified cf-conventions.pdf
Binary file not shown.
9 changes: 8 additions & 1 deletion conformance.html
Original file line number Diff line number Diff line change
Expand Up @@ -456,6 +456,13 @@ <h2 id="cf-conformance-requirements-and-recommendations">CF Conformance Requirem
</ul>
</div>
<div class="sect2">
<h3 id="_ugrid_conventions">UGRID Conventions</h3>
<div class="paragraph">
<p>Requirements and recommendations relating to the UGRID conventions for storing unstructured (or flexible mesh) data in netCDF files are not described here, but are nonetheless considered as part of the CF conformance requirements and recommendations.
See <a href="https://github.com/ugrid-conventions/ugrid-conventions" class="bare">https://github.com/ugrid-conventions/ugrid-conventions</a> for the UGRID conformance requirements and recommendations.</p>
</div>
</div>
<div class="sect2">
<h3 id="filename">2.1 Filename</h3>
<div class="paragraph">
<p><strong>Requirements:</strong></p>
Expand Down Expand Up @@ -1485,7 +1492,7 @@ <h3 id="parametric-vertical-coordinates">Appendix D Parametric Vertical Coordina
</div>
<div id="footer">
<div id="footer-text">
Last updated 2023-10-16 19:56:47 UTC
Last updated 2023-10-23 17:38:25 UTC
</div>
</div>
</body>
Expand Down
Binary file modified conformance.pdf
Binary file not shown.
12 changes: 10 additions & 2 deletions images/cfdm_cf_concepts.gv
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# cfdm_cf_concepts.svg created with:
#
# $ dot -T svg cfdm_cf_concepts.gv cfdm_cf_concepts.svg
# $ dot -T svg cfdm_cf_concepts.gv -o cfdm_cf_concepts.svg
# ====================================================================

digraph {splines=ortho nodesep="+0.25"
Expand Down Expand Up @@ -53,6 +53,8 @@ CellMeasure [label="Cell\nMeasure\nVariable"]
AncillaryData [label="Ancillary\nData\nVariable"]
BoundaryVariable [label="Boundary\nVariable"]
GridMapping [label="Grid\nMapping\nVariable"]
MeshTopology [label="Mesh\nTopology\nVariable"]
LocationIndexSet [label="Location\nIndex Set\nVariable"]

# --------------------------------------------------------------------
# Invisible nodes used to aid in layout
Expand All @@ -78,6 +80,8 @@ route11
route12
route13
route14
route15
route16

edge [arrowtail=none
arrowhead=none
Expand Down Expand Up @@ -119,8 +123,12 @@ route8 -> route9 []
route9 -> CellMeasure [weight=100]
route9 -> route10 []
route10 -> AncillaryData [weight=100]
route10 -> route15 []
route15 -> MeshTopology [weight=100]
route15 -> route16 []
route16 -> LocationIndexSet [weight=100]

{rank=same; route4, route5, route6, route7, route8, route9, route10}
{rank=same; route4, route5, route6, route7, route8, route9, route10, route15, route16}
{rank=same; GenericCoordinate, BoundaryVariable, Data, Domain, CellMeasure, AncillaryData GridMapping}

GenericCoordinate -> BoundaryVariable [arrowhead=vee arrowtail=none minlen=2 headlabel="0..1 "]
Expand Down
318 changes: 182 additions & 136 deletions images/cfdm_cf_concepts.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
183 changes: 104 additions & 79 deletions images/cfdm_field.gv
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#
# cfdm_field.gv created with:
#
# $ dot -T svg cfdm_field.gv cfdm_field.svg
# $ dot -T svg cfdm_field.gv -o cfdm_field.svg
# ====================================================================

digraph {splines=ortho nodesep="+0.25"
Expand All @@ -17,53 +17,62 @@ node [
fontname="Arial"
]

# --------------------------------------------------------------------
# CF-netCDF variables
# --------------------------------------------------------------------
DomainVariable [
fillcolor="#C3FFFF"
label="CN::Domain\nVariable"
]
DataVariable [
fillcolor="#C3FFFF"
label="CN::Data\nVariable"
]

# --------------------------------------------------------------------
# CF data model constructs
# --------------------------------------------------------------------
Domain [
label="<<construct>>\nDomain"
width=2
height=1
]
Field [
label="<<construct>>\nField"
width=2.5
height=1
]
CellMethod [
label="<<construct>>\nCellMethod"
width=2
]
DomainAxis [
label="<<construct>>\nDomainAxis"
width=2
]
DomainAncillary [
label="<<construct>>\nDomainAncillary"
width=2
]
CellMeasure [
label="<<construct>>\nCellMeasure"
width=2
]
CoordinateReference [
label="<<construct>>\nCoordinateReference "
]
label="<<construct>>\nCoordinateReference "
width=2
]
AuxiliaryCoordinate [
label="<<construct>>\nAuxillaryCoordinate"
width=2
]
DimensionCoordinate [
label="<<construct>>\nDimensionCoordinate"
width=2
]
FieldAncillary [
label="<<construct>>\nFieldAncillary"
]
label="<<construct>>\nFieldAncillary"
width=2
]
DomainTopology [
label="<<construct>>\nDomainTopology"
width=2
]
CellConnectivity [
label="<<construct>>\nCellConnectivity"
width=2
]
GenericCoordinate [
label="<<abstract>>\nGeneric\nCoordinate\nConstruct"
width=2
fillcolor=white
]

Expand All @@ -86,76 +95,92 @@ route6
route7
route8
route9
route10
route11
route12
route13

DataVariable -> Field [dir=back arrowtail=vee weight=100]

Field -> route8 [arrowtail=odiamond arrowhead=none dir=both weight=100]
route8 -> Domain [arrowtail=none arrowhead=vee dir=bothhead
headlabel="0..1 " weight=100 labelfontsize=11.0 weight=100]
route1 -> Field [arrowhead=diamond]
Field -> route2 [arrowtail=diamond arrowhead=none dir=both]
{rank=same; route1, Field, route2}

edge [arrowtail=vee
arrowhead=diamond
dir=both
edge [dir=both
arrowsize=1.0
fontname="Arial"
labelfontsize=11.0
]

Domain -> GenericCoordinate [taillabel="0..* " weight=100]
route2 -> CellMethod [arrowhead=vee arrowtail=none headlabel="0..* "
weight=100]
route1 -> FieldAncillary [arrowhead=vee arrowtail=none headlabel="0..* "
weight=100]
Domain -> DomainAxis [arrowtail=vee arrowhead=diamond taillabel="0..* "]
{rank=same; Domain, DomainAxis}

route6 -> Domain [arrowtail=none]
{rank=same;route6, Domain}
route6 -> CoordinateReference [arrowtail=none arrowhead=vee headlabel="0..* "]

Domain -> route7 [arrowtail=diamond arrowhead=none]
route7-> CellMeasure [headlabel="0..* " arrowhead=vee arrowtail=none]
Domain -> DomainAncillary [headlabel="0..* " arrowhead=vee arrowtail=diamond]
FieldAncillary -> Domain [label="uses \nparent "
arrowhead=vee arrowtail=none labelfontsize=11.0]

DomainVariable -> route9 [dir=back arrowtail=vee]
route9 -> Domain [arrowtail=none arrowhead=none]

{rank=same; DomainVariable, DataVariable}
{rank=same; route9, FieldAncillary}


GenericCoordinate -> route4 [arrowhead=none arrowtail=empty weight=100]
route4 -> AuxiliaryCoordinate [dir=none]
{rank=same; route4, AuxiliaryCoordinate}
route4 -> route5 [dir=none]
route5 -> DimensionCoordinate [dir=none]
{rank=same; route5, DimensionCoordinate}
{rank=same;DomainAncillary, GenericCoordinate, route7, CellMeasure}

DomainAncillary -> CoordinateReference [arrowhead=none, arrowtail=vee
taillabel="0..* "
labeldistance=1.1
weight=100]

CellMethod -> DomainAxis [taillabel="1..* " weight=100]
GenericCoordinate -> route3 [arrowhead=none arrowtail=vee
taillabel="0..* "
labeldistance=1.1
weight=100]
route3 -> CoordinateReference [dir=none]
{rank=same; CoordinateReference, DimensionCoordinate}
Field -> route1 [arrowtail=odiamond arrowhead=none weight=100]
Field -> route2 [arrowtail=diamond arrowhead=none weight=100]
route2 -> FieldAncillary [arrowhead=vee arrowtail=none
headlabel="0..* "
weight=100 minlen=7]
{rank=same; route1, route2, FieldAncillary}
#-----------------------------
route1 -> route3 [arrowtail=none arrowhead=none weight=100]
route2 -> route4 [arrowtail=none arrowhead=none weight=100]
route4 -> CellMethod [arrowhead=vee arrowtail=none
headlabel="0..* "
weight=100 minlen=7]
{rank=same; route3, route4, CellMethod}
#-----------------------------
route3 -> Domain [arrowtail=none arrowhead=vee
headlabel="0..1 " weight=100]
Domain -> route5 [arrowtail=diamond arrowhead=none
weight=100 labelfontsize=11.0 minlen=2]
route5 -> DomainAxis [arrowtail=none arrowhead=vee
headlabel="0..* " weight=100 minlen=3]
route6 -> DimensionCoordinate [arrowtail=none arrowhead=none
weight=100 minlen=2]
CellMethod -> DomainAxis [arrowtail=none arrowhead=vee
headlabel="0..* " weight=100]
{rank=same; Domain, route5, DomainAxis, route6, DimensionCoordinate}
#-----------------------------
route5 -> route7 [arrowhead=none arrowtail=none weight=100]
route6 -> route8 [arrowtail=none arrowhead=none weight=100]
route7 -> GenericCoordinate [arrowtail=none arrowhead=vee
headlabel="0..* " weight=100 minlen=3]
GenericCoordinate -> route8 [arrowtail=empty arrowhead=none
weight=100 minlen=2]
route8 -> AuxiliaryCoordinate [arrowtail=none arrowhead=none minlen=2]
{rank=same; route7, GenericCoordinate, route8, AuxiliaryCoordinate}
#-----------------------------
route7 -> route9 [arrowtail=none arrowhead=none weight=100]
route9 -> CoordinateReference[arrowtail=none arrowhead=vee
headlabel="0..* " weight=100 minlen=3]
GenericCoordinate -> CoordinateReference [arrowtail=vee arrowhead=none
taillabel="0..* " weight=100]
{rank=same; route9, CoordinateReference}
#-----------------------------
route9 -> route10 [arrowtail=none arrowhead=none weight=100]
route10 -> DomainAncillary [arrowtail=none arrowhead=vee
weight=100 headlabel="0..* " minlen=3]
CoordinateReference -> DomainAncillary [arrowtail=none arrowhead=vee
headlabel="0..* " weight=100]
{rank=same; route10, DomainAncillary}
#-----------------------------
route10 -> route11 [arrowtail=none arrowhead=none weight=100]
route11 -> CellMeasure [arrowtail=none arrowhead=vee
weight=100 headlabel="0..* " minlen=3]
{rank=same; route11, CellMeasure}
#-----------------------------
route11 -> route12 [arrowtail=none arrowhead=none weight=100]
route12 -> DomainTopology [arrowtail=none arrowhead=vee weight=100
headlabel="0..* " minlen=3]
{rank=same; route12, DomainTopology}
#-----------------------------
route12 -> route13 [arrowtail=none arrowhead=none weight=100]
route13 -> CellConnectivity [arrowtail=none arrowhead=vee weight=100
headlabel="0..* " minlen=3]
{rank=same; route13, CellConnectivity}
#-----------------------------

# --------------------------------------------------------------------
# Invisible edges used to aid in layout
# --------------------------------------------------------------------
DomainAxis -> AuxiliaryCoordinate [style=invis]
DomainAxis -> CellMeasure [style=invis weight=100]
CellMeasure -> AuxiliaryCoordinate [style=invis]
AuxiliaryCoordinate -> DimensionCoordinate[style=invis weight=100]

route1 -> route2 [style=invis weight=100 minlen=3]
route3 -> route4 [style=invis weight=100 minlen=3]
FieldAncillary -> CellMethod [style=invis weight=100]
DomainAxis -> route6 [style=invis weight=100 minlen=2]
DomainAxis -> GenericCoordinate [style=invis weight=100]
DimensionCoordinate -> AuxiliaryCoordinate [style=invis weight=100]
DomainAncillary -> CellMeasure [style=invis weight=100]
CellMeasure -> DomainTopology [style=invis weight=100]
DomainTopology -> CellConnectivity [style=invis weight=100]
}
Loading

0 comments on commit 80ad735

Please sign in to comment.