Exemplo n.º 1
0
# Set velocity to 0 on z-axis
velocityZ = zeros((nx, ny, 1))

###### Setup ##################################################################

# velocity
velocityFileName = "l{0}_nr{1}_dia{2}.npy".format(nx,nrOfPairs,halfDiameterVortexCell)

if os.path.isfile(velocityFileName):
    print "Loading vortices"
    vel = load(velocityFileName)
    print "Loading vortices complete"
else:
    print "Building vortices"
    vel = buildVortexField(nx,ny, nrOfPairs,halfDiameterVortexCell)
    print "Building vortices complete"

os.chdir(outputFolder)

vel = vel*uLB

avgVelX = mean(vel[0,:,:])
avgVelY = mean(vel[1,:,:])

# initial particle distributions
feq   = equilibrium(1.0, vel.reshape((2,nx*ny))).reshape((9,nx,ny))
fin   = feq.copy()
fpost = feq.copy()  # post collision distributions

fluidDomain = full((nx,ny), True, dtype=bool)
Exemplo n.º 2
0
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

from auxiliary.vortex import buildVortexField
import sys, getopt
import os

import numpy

try:
  opts, args = getopt.getopt(sys.argv[1:],"hs:n:",)
except getopt.GetoptError:
    print "parse error"
    print 'test.py -s <edge length> -n <number of vortex pairs in one row/column> '
    sys.exit(2)
for opt, arg in opts:
    if opt == '-h':
        print 'test.py -s <edge length> -n <number of vortex pairs in one row/column> '
        sys.exit()
    elif opt in ("-s"):
        length = int(float(arg))
    elif opt in ("-n"):
        nrOfPairs = int(float(arg))

diameter = length/(4.*nrOfPairs)

vel = buildVortexField(length,length,nrOfPairs,diameter)

numpy.save("l{0}_nr{1}_dia{2}".format(length,nrOfPairs,diameter),vel)