예제 #1
0
import itasca as it
from itasca import cfdarray as ca
from itasca.util import p2pLinkServer

import numpy as np

cfd_link = p2pLinkServer()
cfd_link.start()

nodes = cfd_link.read_data()
elements = cfd_link.read_data()
fluid_density = cfd_link.read_data()
fluid_viscosity = cfd_link.read_data()

it.command("call ../fluidized_bed_4/make_ini.p3dat")
ca.create_mesh(nodes, elements)

it.command("""
config cfd
element cfd ini density {}
element cfd ini visc {}
cfd porosity poly
cfd buoy on
cfd interval 0
element cfd history id 3 zvelocity id 1
plot add hist 2 vs 1
""".format(fluid_density, fluid_viscosity))

element_volume = ca.volume()
oldu = ca.velocity()
old_force = (ca.drag().T/element_volume).T/fluid_density
예제 #2
0
    nodes = cfd_link.read_data()
    elements = cfd_link.read_data()
    fluid_density = cfd_link.read_data()
    fluid_viscosity = cfd_link.read_data()
    print fluid_density, fluid_viscosity
    nmin, nmax = np.amin(nodes,axis=0), np.amax(nodes,axis=0)
    diag = np.linalg.norm(nmin-nmax)
    dmin, dmax = nmin -0.1*diag, nmax+0.1*diag
    print dmin, dmax
    it.command("""
    new
    domain extent {} {} {} {} {} {}
    """.format(dmin[0], dmax[0],
               dmin[1], dmax[1],
               dmin[2], dmax[2]))
    ca.create_mesh(nodes, elements)
    it.command("""
    config cfd
    element cfd ini density {}
    element cfd ini visc {}
    cfd porosity poly
    cfd buoy on
    cfd relax 1
    cfd update
    call particles.p3dat
    """.format(fluid_density, fluid_viscosity))


    
    element_volume = ca.volume()
    dt = 0.005