#147: clarification of standard and correction of conformance doc: formula_terms
-----------------------------+------------------------------
  Reporter:  taylor13        |      Owner:  cf-conventions@…
      Type:  defect          |     Status:  new
  Priority:  high            |  Milestone:
 Component:  cf-conventions  |    Version:
Resolution:                  |   Keywords:
-----------------------------+------------------------------

Comment (by davidhassell):

 Hi Karl,

 Do these sum up the two cases?

 If a coordinate variable has bounds and formula terms but its bounds
 variable does not have formula_terms:
 {{{
 dimensions:
     z = 19 ;
     y = 73 ;
     x = 96 ;
     bound = 2 ;
 variables:
     double hybrid_sigma(z) ;
            hybrid_sigma.standard_name =
 "atmosphere_hybrid_sigma_pressure_coordinate" ;
            hybrid_sigma.formula_terms = "a: A b: B ps: PS" ;
            hybrid_sigma.bounds = "hybrid_sigma_bounds" ;
     double A(z) ;                      // HAS bounds
            A.bounds = "A_bounds" ;
     double B(z) ;                      // HAS bounds
            B.bounds = "B_bounds" ;
     double PS(y, x) ;
     double hybrid_sigma_bounds(z, bounds) ;
     double A_bounds(z, bounds) ;
     double B_bounds(z, bounds) ;
 }}}

 If a coordinate variable has bounds and formula terms and its bounds
 variable also has formula_terms:

 {{{
 dimensions:
     z = 19 ;
     y = 73 ;
     x = 96 ;
     bound = 2 ;
 variables:
     double hybrid_sigma(z) ;
            hybrid_sigma.standard_name =
 "atmosphere_hybrid_sigma_pressure_coordinate" ;
            hybrid_sigma.formula_terms = "a: A b: B ps: PS" ;
            hybrid_sigma.bounds = "hybrid_sigma_bounds" ;
     double A(z) ;                // DOES NOT HAVE bounds
     double B(z) ;                // DOES NOT HAVE bounds
     double PS(y, x) ;
     double hybrid_sigma_bounds(z, bounds) ;
            hybrid_sigma.formula_terms = "a: A_bounds b: B_bounds ps: PS" ;
     double A_bounds(z, bounds) ; // NOT explicitly attached to A
     double B_bounds(z, bounds) ; // NOT explicitly attached to B
 }}}

 The checker has a bit of work to do, in each case, checking whether or not
 bounds exist on certain of the terms.

 Thanks,

 David

--
Ticket URL: <https://cf-trac.llnl.gov/trac/ticket/147#comment:21>
CF Metadata <http://cf-convention.github.io/>
CF Metadata

Reply via email to