Beispiel #1
0
create_figure_scheduler = fk.schedules(times=[0., 1., 2., 3., 4., 5.])
triangular_mesh = fk.TriangularMesh.from_msh_file(
    '../simulations/inputs/square2.mesh')
layer = fk.Layer(1, triangular_mesh, topography=0.)


def H_0(x, y):
    h = 2.4 * (1.0 + np.exp(-0.25 * ((x - 10.05)**2 + (y - 10.05)**2)))
    return h


primitives = fk.Primitive(triangular_mesh, layer, height_funct=H_0)
tracers = [fk.Tracer(triangular_mesh, layer, primitives, Tinit=1.0)]
slides = [fk.Slide(ref=r) for r in [1, 2, 3, 4]]
vtk_writer = fk.VTKWriter(triangular_mesh,
                          scheduler=fk.schedules(count=10),
                          scale_h=1.)

problem = fk.Problem(simutime,
                     triangular_mesh,
                     layer,
                     primitives,
                     slides=slides,
                     numerical_parameters={'space_second_order': True},
                     tracers=tracers,
                     vtk_writer=vtk_writer,
                     restart_scheduler=restart_scheduler,
                     custom_funct={'plot': fk_plt.plot_freesurface_3d},
                     custom_funct_scheduler=create_figure_scheduler)

################################################################################
                       angular_velocity=angular_velocity,
                       phase=-np.pi)
wheels = [
    fk.Wheel(A, B, radius=RADIUS, magnitude=TORQUE, rotating=rotating),
]
paddle_wheel_effect = fk.WheelEffect(wheels, triangular_mesh.vertices, layer)
external_effects = {"wheel": paddle_wheel_effect}

################################################################################
#
# Writter:
#----------------------
#

vtk_writer = fk.VTKWriter(triangular_mesh,
                          scheduler=output_scheduler,
                          scale_h=SCALE_H)

################################################################################
#
# Problem definition:
#--------------------

raceway = fk.Problem(simutime,
                     triangular_mesh,
                     layer,
                     primitives,
                     slides=slides,
                     numerical_parameters=NUM_PARAMS,
                     physical_parameters=PHY_PARAMS,
                     external_effects=external_effects,
Beispiel #3
0
################################################################################
#
#.. note::
#
#   * Once again, tracer labels are used to apply source terms on each one of the tracers.
#   * Note that tracer sources can be set in kg instead of [T]=kg/m3 in the case of species. The corresponding concentration source term is computed based on cell volume and mass source.

################################################################################
#
# Writter:
#----------------------
#

NB_VTK = 10
vtk_writer = fk.VTKWriter(triangular_mesh,
                          scheduler=fk.schedules(count=NB_VTK),
                          scale_h=5.)

################################################################################
#
# Problem definition:
#--------------------

problem = fk.Problem(simutime,
                     triangular_mesh,
                     layer,
                     primitives,
                     slides=slides,
                     fluvial_heights=fluvial_heights,
                     fluvial_flowrates=fluvial_flowrates,
                     tracers=tracers,