예제 #1
0
def run(dom, stream):
    constraints=VectorConstrainerOverBox()
    constraints.domain=Link(dom)
    constraints.left=[1,0,0]
    constraints.right=[1,0,0]
    constraints.top=[0,1,0]
    constraints.bottom=[0,1,0]
    constraints.front=[0,0,1]
    constraints.back=[0,0,1]

    sqe=Sequencer()
    sqe.dt_max=0.5
    sqe.t_end=1.

    source=EvaluateExpression()
    source.domain=Link(dom)
    source.t=Link(sqe)
    source.expression=["t","t"]

    flow=SteadyIncompressibleFlow()
    flow.domain=Link(dom,"domain")
    flow.internal_force=Link(source,"out")
    flow.location_prescribed_velocity=Link(constraints,"location_of_constraint")
    flow.prescribed_velocity=[0.,0.]

    ptest=Probe()
    ptest.expression="(x[0]+x[1]-1.)*t"
    ptest.t=Link(sqe)
    ptest.value=Link(flow,"pressure")

    s=Simulation([sqe,constraints,Simulation([flow],debug=True),ptest],debug=True)
    s.writeXML(stream)
    s.run()
예제 #2
0
def run(dom, stream):
    constraints=VectorConstrainerOverBox()
    constraints.domain=Link(dom)
    constraints.left=[1,0,0]
    constraints.right=[1,0,0]
    constraints.top=[0,1,0]
    constraints.bottom=[0,1,0]
    constraints.front=[0,0,1]
    constraints.back=[0,0,1]

    sqe=Sequencer()
    sqe.dt_max=0.5
    sqe.t_end=1.

    source=EvaluateExpression()
    source.domain=Link(dom)
    source.t=Link(sqe)
    source.expression=["t","t"]

    flow=SteadyIncompressibleFlow()
    flow.domain=Link(dom,"domain")
    flow.internal_force=Link(source,"out")
    flow.location_prescribed_velocity=Link(constraints,"location_of_constraint")
    flow.prescribed_velocity=[0.,0.]

    ptest=Probe()
    ptest.expression="(x[0]+x[1]-1.)*t"
    ptest.t=Link(sqe)
    ptest.value=Link(flow,"pressure")

    s=Simulation([sqe,constraints,Simulation([flow],debug=True),ptest],debug=True)
    s.writeXML(stream)
    s.run()
except KeyError:
    WORKDIR = '.'

dbg = True

dom = RectangularDomain(debug=dbg)
dom.dim = 3
dom.l = [0.5, 1., 1.]
dom.n = [30, 6, 6]
dom.order = 1
dom.integrationOrder = -1

sq = Sequencer(debug=dbg)
sq.t = 0
sq.t_end = 0.8
sq.dt_max = 100.

iob = InterpolateOverBox(debug=dbg)
iob.domain = Link(dom, "domain")
iob.value_left_bottom_front = [-1., 0., 0.]
iob.value_right_bottom_front = [0., 0., 0.]
iob.value_left_bottom_back = [-1., 0., 0.]
iob.value_right_bottom_back = [0., 0., 0.]
iob.value_left_top_front = [-1., 0., 0.]
iob.value_right_top_front = [0., 0., 0.]
iob.value_left_top_back = [-1., 0., 0.]
iob.value_right_top_back = [0., 0., 0.]

# iob.value_left_bottom_front=[-1.,0.]
# iob.value_right_bottom_front=[0.,0.]
# iob.value_left_bottom_back=[-1.,0.]
예제 #4
0

dbg=True

dom=RectangularDomain(debug=dbg)
dom.dim=3
dom.l=[0.5,1.,1.]
dom.n=[30,6,6]
dom.order=1
dom.integrationOrder=-1


sq=Sequencer(debug=dbg)
sq.t=0
sq.t_end=0.8
sq.dt_max=100.

iob=InterpolateOverBox(debug=dbg)
iob.domain=Link(dom,"domain")
iob.value_left_bottom_front=[-1.,0.,0.]
iob.value_right_bottom_front=[0.,0.,0.]
iob.value_left_bottom_back=[-1.,0.,0.]
iob.value_right_bottom_back=[0.,0.,0.]
iob.value_left_top_front=[-1.,0.,0.]
iob.value_right_top_front=[0.,0.,0.]
iob.value_left_top_back=[-1.,0.,0.]
iob.value_right_top_back=[0.,0.,0.]

# iob.value_left_bottom_front=[-1.,0.]
# iob.value_right_bottom_front=[0.,0.]
# iob.value_left_bottom_back=[-1.,0.]