Skip to content
Snippets Groups Projects
Commit 7fbfc1bb authored by David Seus's avatar David Seus
Browse files

uiae

parent 01916d63
No related branches found
No related tags found
No related merge requests found
...@@ -13,27 +13,31 @@ import helpers as hlp ...@@ -13,27 +13,31 @@ import helpers as hlp
# init sympy session # init sympy session
sym.init_printing() sym.init_printing()
use_case = "RR-multi-patch"
solver_tol = 1E-7 solver_tol = 1E-7
# ----------------------------------------------------------------------------# # ----------------------------------------------------------------------------#
# ------------------- MESH ---------------------------------------------------# # ------------------- MESH ---------------------------------------------------#
# ----------------------------------------------------------------------------# # ----------------------------------------------------------------------------#
mesh_resolution = 30 mesh_resolution = 40
# ----------------------------------------:-------------------------------------# # ----------------------------------------:-------------------------------------#
# ------------------- TIME ---------------------------------------------------# # ------------------- TIME ---------------------------------------------------#
# ----------------------------------------------------------------------------# # ----------------------------------------------------------------------------#
timestep_size = 0.01 timestep_size = 0.01
number_of_timesteps = 50 number_of_timesteps = 150
# decide how many timesteps you want analysed. Analysed means, that we write # decide how many timesteps you want analysed. Analysed means, that we write
# out subsequent errors of the L-iteration within the timestep. # out subsequent errors of the L-iteration within the timestep.
number_of_timesteps_to_analyse = 10 number_of_timesteps_to_analyse = 5
starttime = 0 starttime = 0
include_gravity = True
Lw = 0.25 Lw = 0.25
lamdal_w = 4 lambda_w = 4
include_gravity = True
debugflag = False
analyse_condition = False
output_string = "./output/testing_number_of_timesteps_{}_".format(number_of_timesteps) output_string = "./output/new_gravity_term-number_of_timesteps{}_".format(number_of_timesteps)
# ----------------------------------------------------------------------------# # ----------------------------------------------------------------------------#
...@@ -180,10 +184,10 @@ L = { ...@@ -180,10 +184,10 @@ L = {
# subdom_num : lambda parameter for the L-scheme # subdom_num : lambda parameter for the L-scheme
lambda_param = { lambda_param = {
1: {'wetting': lamdal_w}, 1: {'wetting': lambda_w},
2: {'wetting': lamdal_w}, 2: {'wetting': lambda_w},
3: {'wetting': lamdal_w}, 3: {'wetting': lambda_w},
4: {'wetting': lamdal_w} 4: {'wetting': lambda_w}
} }
...@@ -421,8 +425,9 @@ write_to_file = { ...@@ -421,8 +425,9 @@ write_to_file = {
} }
# initialise LDD simulation class # initialise LDD simulation class
simulation = ldd.LDDsimulation(tol=1E-14, debug=False, LDDsolver_tol=solver_tol) simulation = ldd.LDDsimulation(tol=1E-14, debug=debugflag, LDDsolver_tol=solver_tol)
simulation.set_parameters(output_dir=output_string, simulation.set_parameters(use_case=use_case,
output_dir=output_string,
subdomain_def_points=subdomain_def_points, subdomain_def_points=subdomain_def_points,
isRichards=isRichards, isRichards=isRichards,
interface_def_points=interface_def_points, interface_def_points=interface_def_points,
...@@ -450,6 +455,6 @@ simulation.set_parameters(output_dir=output_string, ...@@ -450,6 +455,6 @@ simulation.set_parameters(output_dir=output_string,
simulation.initialise() simulation.initialise()
# print(simulation.__dict__) # print(simulation.__dict__)
simulation.run() simulation.run(analyse_condition=analyse_condition)
# simulation.LDDsolver(time=0, debug=True, analyse_timestep=True) # simulation.LDDsolver(time=0, debug=True, analyse_timestep=True)
# df.info(parameters, True) # df.info(parameters, True)
# global domain
subdomain0_vertices = [df.Point(0.0,0.0), #
df.Point(13.0,0.0),#
df.Point(13.0,8.0),#
df.Point(0.0,8.0)]
interface12_vertices = [df.Point(0.0, 7.0),
df.Point(9.0, 7.0),
df.Point(10.5, 7.5),
df.Point(12.0, 7.0),
df.Point(13.0, 6.5)]
# subdomain1.
subdomain1_vertices = [interface12_vertices[0],
interface12_vertices[1],
interface12_vertices[2],
interface12_vertices[3],
interface12_vertices[4], # southern boundary, 12 interface
subdomain0_vertices[2], # eastern boundary, outer boundary
subdomain0_vertices[3]] # northern boundary, outer on_boundary
# vertex coordinates of the outer boundaries. If it can not be specified as a
# polygon, use an entry per boundary polygon. This information is used for defining
# the Dirichlet boundary conditions. If a domain is completely internal, the
# dictionary entry should be 0: None
subdomain1_outer_boundary_verts = {
0: [interface12_vertices[4], #
subdomain0_vertices[2], # eastern boundary, outer boundary
subdomain0_vertices[3],
interface12_vertices[0]]
}
# interface23
interface23_vertices = [df.Point(0.0, 5.0),
df.Point(3.0, 5.0),
# df.Point(6.5, 4.5),
df.Point(6.5, 5.0),
df.Point(9.5, 5.0),
# df.Point(11.5, 3.5),
# df.Point(13.0, 3)
df.Point(11.5, 5.0),
df.Point(13.0, 5.0)
]
#subdomain1
subdomain2_vertices = [interface23_vertices[0],
interface23_vertices[1],
interface23_vertices[2],
interface23_vertices[3],
interface23_vertices[4],
interface23_vertices[5], # southern boundary, 23 interface
subdomain1_vertices[4], # eastern boundary, outer boundary
subdomain1_vertices[3],
subdomain1_vertices[2],
subdomain1_vertices[1],
subdomain1_vertices[0] ] # northern boundary, 12 interface
subdomain2_outer_boundary_verts = {
0: [interface23_vertices[5],
subdomain1_vertices[4]],
1: [subdomain1_vertices[0],
interface23_vertices[0]]
}
# interface34
interface34_vertices = [df.Point(0.0, 2.0),
df.Point(4.0, 2.0),
df.Point(9.0, 2.5),
df.Point(10.5, 2.0),
df.Point(13.0, 1.5)]
# subdomain3
subdomain3_vertices = [interface34_vertices[0],
interface34_vertices[1],
interface34_vertices[2],
interface34_vertices[3],
interface34_vertices[4], # southern boundary, 34 interface
subdomain2_vertices[5], # eastern boundary, outer boundary
subdomain2_vertices[4],
subdomain2_vertices[3],
subdomain2_vertices[2],
subdomain2_vertices[1],
subdomain2_vertices[0] ] # northern boundary, 23 interface
subdomain3_outer_boundary_verts = {
0: [interface34_vertices[4],
subdomain2_vertices[5]],
1: [subdomain2_vertices[0],
interface34_vertices[0]]
}
# subdomain4
subdomain4_vertices = [subdomain0_vertices[0],
subdomain0_vertices[1], # southern boundary, outer boundary
subdomain3_vertices[4],# eastern boundary, outer boundary
subdomain3_vertices[3],
subdomain3_vertices[2],
subdomain3_vertices[1],
subdomain3_vertices[0] ] # northern boundary, 34 interface
subdomain4_outer_boundary_verts = {
0: [subdomain4_vertices[6],
subdomain4_vertices[0],
subdomain4_vertices[1],
subdomain4_vertices[2]]
}
subdomain_def_points = [subdomain0_vertices,#
subdomain1_vertices,#
subdomain2_vertices,#
subdomain3_vertices,#
subdomain4_vertices
]
...@@ -3,7 +3,10 @@ Rechungen, die noch nicht ausgewertet wurden ...@@ -3,7 +3,10 @@ Rechungen, die noch nicht ausgewertet wurden
- TP-one-patch (purely positive pc) - TP-one-patch (purely positive pc)
- TP-TP-layered-soil-case-with-inner-patch - TP-TP-layered-soil-case-with-inner-patch
- TP-R-two-patch-test-case - TP-R-two-patch-test-case
- RR-multipatch-plus-gravity
Rechnungen, die neu gestartet werden müssen: Rechnungen, die neu gestartet werden müssen:
-TP-R-multi-patch-same-wetting-phase-as-RR-zero-nonwetting -TP-R-multi-patch-same-wetting-phase-as-RR-zero-nonwetting
- TP-R-two-patch-test-case (nach der reimplementierung von gravity)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment