DNDSR 0.1.0.dev1+gcd065ad
Distributed Numeric Data Structure for CFV
Loading...
Searching...
No Matches
__generate_explicit_inst__.py
Go to the documentation of this file.
1import sys, os
2
3
4TU_templates = {
5 # EulerEvaluator_EvaluateDt_
6 "EulerEvaluator_EvaluateDt_": """
7#include "../EulerEvaluator_EvaluateDt.hxx"
8
9DNDS_EulerEvaluator_EvaluateDt_INS_EXTERN({model}, )
10""",
11 # EulerEvaluator_EvaluateRHS_
12 "EulerEvaluator_EvaluateRHS_": """
13#include "../EulerEvaluator_EvaluateRHS.hxx"
14
15DNDS_EulerEvaluator_EvaluateRHS_INS_EXTERN({model}, )
16""",
17 # EulerEvaluator_
18 "EulerEvaluator_": """
19#include "../EulerEvaluator.hxx"
20
21DNDS_EulerEvaluator_INS_EXTERN({model}, )
22""",
23 # EulerSolver_Init_
24 "EulerSolver_Init_": """
25#include "../EulerSolver_Init.hxx"
26
27DNDS_EULERSOLVER_INIT_INS_EXTERN({model}, )
28""",
29 # EulerSolver_
30 "EulerSolver_": """
31#include "../EulerSolver.hxx"
32
33DNDS_EULERSOLVER_INS_EXTERN({model}, )
34""",
35 # EulerSolver_PrintData_
36 "EulerSolver_PrintData_": """
37#include "../EulerSolver_PrintData.hxx"
38
39DNDS_EULERSOLVER_PRINTDATA_INS_EXTERN({model}, )
40""",
41}
42
43models = [
44 "NS",
45 "NS_2D",
46 "NS_3D",
47 "NS_SA",
48 "NS_SA_3D",
49 "NS_2EQ",
50 "NS_2EQ_3D",
51 "NS_EX",
52 "NS_EX_3D",
53]
54
55
56base_pos = os.path.abspath(os.path.dirname(__file__))
57
58file_done = set()
59
60for inst_prefix, template in TU_templates.items():
61 for model in models:
62 fname = inst_prefix + model + ".cpp"
63 assert fname not in file_done, f"file name clash: {fname}"
64 file_done.add(fname)
65 template = template.strip()
66 with open(os.path.join(base_pos, fname), "w") as f:
67 f.write(template.format(model=model))
68 print(f"generated: {fname}")
set(LIBNAME cfv) set(LINKS) set(LINKS_SHARED geom_shared dnds_shared $
Definition CMakeLists.txt:5