renamed set_noslip_bc because this symmetry should (maybe) not be used
This commit is contained in:
parent
d197683edc
commit
2a779c3a2d
31
parallel.py
31
parallel.py
|
|
@ -501,7 +501,7 @@ class PPP:
|
||||||
self.init_mirror_symmetry(key,axis,+1)
|
self.init_mirror_symmetry(key,axis,+1)
|
||||||
return
|
return
|
||||||
|
|
||||||
def init_mirror_symmetry(self,key,axis,wall):
|
def init_mirror_symmetry(self,key,axis,wall,invert=False):
|
||||||
'''Applies symmetry: [u,v,w](x,-y,z) -> [u,-v,w](x,y,z)
|
'''Applies symmetry: [u,v,w](x,-y,z) -> [u,-v,w](x,y,z)
|
||||||
Proposed by Lozano-Duran JFM 2016 and used for free-slip.'''
|
Proposed by Lozano-Duran JFM 2016 and used for free-slip.'''
|
||||||
if self.periodicity[axis]:
|
if self.periodicity[axis]:
|
||||||
|
|
@ -515,33 +515,14 @@ class PPP:
|
||||||
sl[axis] = iwall
|
sl[axis] = iwall
|
||||||
sl = tuple(sl)
|
sl = tuple(sl)
|
||||||
if key==keyu[axis]:
|
if key==keyu[axis]:
|
||||||
self.symmetries[key][sl] = -1
|
self.symmetries[key][sl] = -1 if not invert else +1
|
||||||
else:
|
else:
|
||||||
self.symmetries[key][sl] = 1
|
self.symmetries[key][sl] = +1 if not invert else -1
|
||||||
return
|
return
|
||||||
|
|
||||||
def set_noslip_bc(self,axis,wall):
|
def init_inversion_symmetry(self,key,axis,wall):
|
||||||
'''Applies symmetry: [u,v,w](x,-y,z) -> [-u,v,-w](x,y,z)
|
'''Applies symmetry: [u,v,w](x,-y,z) -> [-u,v,-w](x,y,z)'''
|
||||||
The boundary conditions are only applied to fields which have already been loaded!'''
|
return self.init_mirror_symmetry(key,axis,wall,invert=True)
|
||||||
if self.periodicity[axis]:
|
|
||||||
return
|
|
||||||
if wall in (-1,'low'): iwall = 0
|
|
||||||
elif wall in (1,'high'): iwall = 2
|
|
||||||
else: raise ValueError('Invalid value for "wall". Valid values are -1 / "low" or 1 / "high".')
|
|
||||||
keyu = ('u','v','w')
|
|
||||||
for key in keyu:
|
|
||||||
if not key in self.symmetries:
|
|
||||||
continue
|
|
||||||
# Get position in symmetries array to be edited
|
|
||||||
sl = [1,1,1]
|
|
||||||
sl[axis] = iwall
|
|
||||||
sl = tuple(sl)
|
|
||||||
if key==keyu[axis]:
|
|
||||||
self.symmetries[key][sl] = 1
|
|
||||||
else:
|
|
||||||
self.symmetries[key][sl] = -1
|
|
||||||
self.impose_boundary_conditions(key)
|
|
||||||
return
|
|
||||||
|
|
||||||
def copy(self,key,key_out,skip_data=False,skip_symmetries=False):
|
def copy(self,key,key_out,skip_data=False,skip_symmetries=False):
|
||||||
'''Copies a field to a new key.'''
|
'''Copies a field to a new key.'''
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue