~airpollution/fluidity/fluidity_airpollution

« back to all changes in this revision

Viewing changes to schemas/physical_parameters.rnc

  • Committer: ziyouzhj
  • Date: 2013-12-09 16:51:29 UTC
  • Revision ID: ziyouzhj@gmail.com-20131209165129-ucoetc3u0atyy05c
airpolution

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
physical_parameter_options =
 
2
   element physical_parameters {
 
3
      gravity_options?,
 
4
      coriolis_options?
 
5
      }
 
6
 
 
7
gravity_options =
 
8
   ## Set a gravity to be included in the buoyancy term.
 
9
   element gravity {
 
10
      ## Acceleration due to gravity. 9.8 m/s^2 on earth.
 
11
      element magnitude {
 
12
         real
 
13
      },
 
14
      ## The direction of the gravity vector.
 
15
      element vector_field {
 
16
         attribute name { "GravityDirection" },
 
17
         attribute rank { "1" },
 
18
         element prescribed {
 
19
            coordinate_mesh_choice,
 
20
            prescribed_vector_field_no_adapt
 
21
         }
 
22
      }
 
23
   }
 
24
 
 
25
coriolis_options =
 
26
   ## Options relating to Coriolis force. The rotation vector is
 
27
   ## assumed to be in the z-direction:
 
28
   ##
 
29
   ##   F_C = 2 \Omega \hat{k} \times u = f \hat{k} \times u
 
30
   element coriolis {
 
31
      (
 
32
         f_plane_options|
 
33
         beta_plane_options|
 
34
         ## Full Coriolis parameter:
 
35
         ##   f = 2 omega sin (latitude)
 
36
         ## where latitude=y/R_earth+latitude_0
 
37
         ## 
 
38
         ## Specify omega and R_earth and latitude_0
 
39
         element sine_of_latitude {
 
40
            ## Full Coriolis parameter:
 
41
            ##   f = 2 omega sin (latitude)
 
42
            ## where latitude=y/R_earth+latitude_0
 
43
            element omega {
 
44
               real
 
45
            },
 
46
            ## Full Coriolis parameter:
 
47
            ##   f = 2 omega sin (latitude)
 
48
            ## where latitude=y/R_earth+latitude_0
 
49
            ## 
 
50
            ## Suggested value for R_earth: 6.371e6
 
51
            element R_earth {
 
52
               real
 
53
            },
 
54
            ## Full Coriolis parameter:
 
55
            ##   f = 2 omega sin (latitude)
 
56
            ## where 
 
57
            ##   latitude=y/R_earth+latitude_0
 
58
            ## latitude_0 is the latitude of y=0
 
59
            element latitude_0 {
 
60
               real
 
61
            }
 
62
         }|
 
63
         ## Full representation on sphere
 
64
         element on_sphere {
 
65
            ## Earth rotation rate
 
66
            ## 
 
67
            ## Suggested value: 2 pi / 86400 = 7.27220522e-5
 
68
            element omega {
 
69
               real
 
70
            }
 
71
         }|
 
72
         ## As f_plane, but with the value for f set using a python
 
73
         ## function. Allows for time varying rotation rate.
 
74
         ##
 
75
         ## Functions should be of the form:
 
76
         ##
 
77
         ##  def val(t):
 
78
         ##     # Function code
 
79
         ##     return # Return value
 
80
         ##
 
81
         ## where the return value is a float.
 
82
         element python_f_plane {
 
83
            python_code
 
84
         }
 
85
      )
 
86
   }
 
87
 
 
88
f_plane_options =
 
89
   ## f-plane approximation
 
90
   ## This means the Coriolis force looks like:
 
91
   ##   f k x u
 
92
   ## where k is the z unit vector
 
93
   ##    and u the velocity vector
 
94
   ##    and f is constant
 
95
   element f_plane {
 
96
         ## f-plane approximation
 
97
         ## This means the Coriolis force looks like:
 
98
         ##   f k x u
 
99
         ## where k is the z unit vector
 
100
         ##    and u the velocity vector
 
101
         ##    and f is constant
 
102
         element f {
 
103
            real
 
104
         }
 
105
      }
 
106
 
 
107
beta_plane_options =
 
108
   ## Beta-plane approximation
 
109
   ## This means the Coriolis force looks like:
 
110
   ##   f k x u
 
111
   ## where k is the z unit vector
 
112
   ##    and u the velocity vector
 
113
   ##    and f=f_0+beta . (x,y,z)
 
114
   element beta_plane {
 
115
      ## Beta-plane approximation
 
116
      ## This means the Coriolis force looks like:
 
117
      ##   f k x u
 
118
      ## where k is the z unit vector
 
119
      ##    and u the velocity vector
 
120
      ##    and f=f_0+beta . (x,y,z)
 
121
      element f_0 {
 
122
         real
 
123
      },
 
124
      ## Beta-plane approximation
 
125
      ## This means the Coriolis force looks like:
 
126
      ##   f k x u
 
127
      ## where k is the z unit vector
 
128
      ##    and u the velocity vector
 
129
      ##    and f=f_0+beta . (x,y,z)
 
130
      ## usually only the y-component of beta is non-zero
 
131
      element beta {
 
132
         real_dim_vector
 
133
      }
 
134
   }