Skip to content

Commit 78683c8

Browse files
committed
reverted to the previous kratos workflow
1 parent 38e7714 commit 78683c8

3 files changed

Lines changed: 24 additions & 5 deletions

File tree

benchmarks/linear-elastic-plate-with-hole/kratos/Snakefile

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ rule create_kratos_input_and_run_simulation:
4242
script_run_kratos_simulation = f"{tool}/run_kratos_simulation.py",
4343
output:
4444
kratos_inputfile = f"{result_dir}/{tool}/ProjectParameters_{{configuration}}.json",
45+
kratos_materialfile = f"{result_dir}/{tool}/MaterialParameters_{{configuration}}.json",
4546
result_vtk = f"{result_dir}/{tool}/{{configuration}}/Structure_0_1.vtk",
4647
conda:
4748
"environment_simulation.yml",
@@ -52,11 +53,13 @@ rule create_kratos_input_and_run_simulation:
5253
--input_mdpa_file {input.mdpa} \
5354
--input_kratos_input_template {input.kratos_input_template} \
5455
--input_material_template {input.kratos_material_template} \
55-
--output_kratos_inputfile {output.kratos_inputfile}
56+
--output_kratos_inputfile {output.kratos_inputfile} \
57+
--output_kratos_materialfile {output.kratos_materialfile}
5658
5759
python3 {input.script_run_kratos_simulation} \
5860
--input_parameter_file {input.parameters} \
59-
--input_kratos_inputfile {output.kratos_inputfile}
61+
--input_kratos_inputfile {output.kratos_inputfile} \
62+
--input_kratos_materialfile {output.kratos_materialfile} \
6063
"""
6164

6265
rule postprocess_kratos_results:

benchmarks/linear-elastic-plate-with-hole/kratos/create_kratos_input.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ def create_kratos_input(
1414
mdpa_file: str,
1515
kratos_input_template_file: str,
1616
kratos_material_template_file: str,
17-
kratos_input_file: str
17+
kratos_input_file: str,
18+
kratos_material_file: str,
1819
):
1920
ureg = UnitRegistry()
2021
with open(parameter_file) as f:
@@ -76,13 +77,16 @@ def create_kratos_input(
7677
material_string = material_string.replace(r'"{{YOUNG_MODULUS}}"', str(E))
7778
material_string = material_string.replace(r'"{{POISSON_RATIO}}"', str(nu))
7879

80+
with open(kratos_material_file, "w") as f:
81+
f.write(material_string)
82+
7983
with open(kratos_input_template_file) as f:
8084
project_parameters_string = f.read()
8185
project_parameters_string = project_parameters_string.replace(
8286
r"{{MESH_FILE}}", os.path.splitext(mdpa_file)[0]
8387
)
8488
project_parameters_string = project_parameters_string.replace(
85-
r"{{MATERIAL_FILE}}", material_string
89+
r"{{MATERIAL_FILE}}", kratos_material_file
8690
)
8791
project_parameters_string = project_parameters_string.replace(
8892
r"{{BOUNDARY_RIGHT_TRACTION_X}}", sxx_str
@@ -131,12 +135,18 @@ def create_kratos_input(
131135
required=True,
132136
help="Path to the kratos input file (output)",
133137
)
138+
parser.add_argument(
139+
"--output_kratos_materialfile",
140+
required=True,
141+
help="Path to the kratos material file (output)",
142+
)
134143
args, _ = parser.parse_known_args()
135144

136145
create_kratos_input(
137146
parameter_file=args.input_parameter_file,
138147
mdpa_file=args.input_mdpa_file,
139148
kratos_input_template_file=args.input_kratos_input_template,
140149
kratos_material_template_file=args.input_material_template,
141-
kratos_input_file=args.output_kratos_inputfile
150+
kratos_input_file=args.output_kratos_inputfile,
151+
kratos_material_file=args.output_kratos_materialfile,
142152
)

benchmarks/linear-elastic-plate-with-hole/kratos/run_kratos_simulation.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,12 @@
3636
required=True,
3737
help="Path to the kratos input file (input)",
3838
)
39+
parser.add_argument(
40+
"--input_kratos_materialfile",
41+
required=False,
42+
default=None,
43+
help="Optional path to the kratos material file (unused, kept for compatibility)",
44+
)
3945
args, _ = parser.parse_known_args()
4046

4147
with open(args.input_kratos_inputfile, "r") as kratos_input:

0 commit comments

Comments
 (0)