parse fluctuation operator
This commit is contained in:
parent
856cbfbe49
commit
72aa006cf6
2 changed files with 18 additions and 3 deletions
|
|
@ -32,6 +32,7 @@ calc_grammar = """
|
|||
?atom: NUMBER -> number
|
||||
| "-" atom -> neg
|
||||
| NAME -> var
|
||||
| NAME "'" -> fluc
|
||||
| "$" NAME -> env
|
||||
| "(" sum ")"
|
||||
| inlinefunc "(" sum ")" -> icall
|
||||
|
|
@ -144,6 +145,13 @@ class CalculateTree(Transformer):
|
|||
dep.append(name.value)
|
||||
return (name + "(i,j,k)", dep)
|
||||
|
||||
def fluc(self, name):
|
||||
dep = []
|
||||
if name not in self.primary:
|
||||
dep.append(name.value)
|
||||
fmt = "({0}(i,j,k) - avg_{0}(i))"
|
||||
return (fmt.format(name) , dep)
|
||||
|
||||
def env(self, name):
|
||||
return (name, [])
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,14 @@ c_auto = 1.0 - y
|
|||
wrate_auto = rxn_rate(c_auto)
|
||||
fsd_auto = sqrt (sqr(ddx(c_auto)) + sqr(ddy(c_auto)) + sqr(ddz(c_auto)))
|
||||
|
||||
avg { u, v, w}
|
||||
avg c_auto { u, v, w}
|
||||
avg y { u, v, w}
|
||||
k = (sqr(u')+sqr(v')+sqr(w'))/2.0
|
||||
|
||||
tflux = u' * c_auto'
|
||||
|
||||
avg { u, v, w, c_auto }
|
||||
|
||||
avg c_auto { u, v, w }
|
||||
|
||||
avg y { u, v, w }
|
||||
|
||||
avg fsd_auto { u }
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue