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:
parent
c472c9c245
commit
d383712a83
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user