@@ -5,17 +5,19 @@ import ClimaComms
5
5
import ClimaCore: Spaces, Topologies, Fields, Geometry
6
6
import LinearAlgebra: norm_sqr
7
7
8
- is_energy_var (symbol ) = symbol in (: ρe_tot, : ρae_tot )
9
- is_momentum_var (symbol ) = symbol in (:uₕ , : ρuₕ, :u₃ , :ρw )
10
- is_turbconv_var (symbol ) = symbol in (: turbconv, : sgsʲs, : sgs⁰ )
11
- is_tracer_var (symbol ) = ! (
12
- symbol == :ρ ||
13
- symbol == :ρa ||
14
- is_energy_var (symbol ) ||
15
- is_momentum_var (symbol ) ||
16
- is_turbconv_var (symbol )
8
+ is_energy_var (name ) = name in (@name ( ρe_tot), @name ( ρae_tot) )
9
+ is_momentum_var (name ) = name in (@name (uₕ), @name ( ρuₕ), @name (u₃), @name (ρw) )
10
+ is_turbconv_var (name ) = name in (@name ( turbconv), @name ( sgsʲs), @name ( sgs⁰) )
11
+ is_tracer_var (name ) = ! (
12
+ name == @name (ρ) ||
13
+ name == @name (ρa) ||
14
+ is_energy_var (name ) ||
15
+ is_momentum_var (name ) ||
16
+ is_turbconv_var (name )
17
17
)
18
18
19
+ is_tracer_var (symbol:: Symbol ) = is_tracer_var (@name (symbol))
20
+
19
21
# we may be hitting a slow path:
20
22
# https://stackoverflow.com/questions/14687665/very-slow-stdpow-for-bases-very-close-to-1
21
23
fast_pow (x, y) = exp (y * log (x))
0 commit comments