workflow/drainage/setup-drain.py reads csv file containing morphological drainage data and sets up simulation directories with input file

This commit is contained in:
James E McClure 2016-07-31 14:44:12 -04:00
parent c472c9c245
commit d383712a83

View File

@ -1,27 +1,73 @@
import os
import sys
import csv
name=sys.argv[1]
numpts=int(sys.argv[2])
process="drain"
cwd=os.getcwd()
print(name)
print(numpts)
print("Initializing morphological drainage cases")
print("Base name is "+name)
# Parameters for color LBM
tau=0.7
alpha=0.005
beta=0.95
phisol=-1.0
saturation=0.0
Fx=0.0
Fy=0.0
Fz=0.0
Restart=0
pBC=1
din=1.001
dout=0.999
maxtime=100005
interval=50000
tolerance=1e-5
viscosity=(tau-0.5)/3
ift=5.7896*alpha
radius=[]
sw=[]
with open("morphdrain.csv","r") as f:
for line in f:
reader=csv.reader(f,delimiter=' ')
for row in reader:
radius.append(float(row[0]))
sw.append(float(row[1]))
numpts=len(radius)
print("Number of cases "+str(numpts))
for pt in range(0,numpts):
#compute the pressure difference
dp=2*ift/radius[pt]
din=1.0+0.5*dp
dout=1.0-0.5*dp
dirname=str(name)+"_"+str(process)+"_"+str(pt)
# os.path.join(cwd,name,process,"pt"),
print(cwd,dirname)
print("Creating " + dirname)
if not os.path.exists(dirname):
os.mkdir(dirname)
os.chdir(dirname)
ParamFile = open("Color.in","w")
ParamFile.write("%f\n" % tau)
ParamFile.write("%f " % alpha)
ParamFile.write("%f\n" % beta)
ParamFile.write("%f " % beta)
ParamFile.write("%f\n" % phisol)
ParamFile.write("%f\n" % saturation)
ParamFile.write("%f " % Fx)
ParamFile.write("%f " % Fy)
ParamFile.write("%f\n" % Fz)
ParamFile.write("%i " % Restart)
ParamFile.write("%i " % pBC)
ParamFile.write("%f " % din)
ParamFile.write("%f\n" % dout)
ParamFile.write("%i " % maxtime)
ParamFile.write("%i " % interval)
ParamFile.write("%f\n" % tolerance)
ParamFile.close()
os.chdir(cwd)