Skip to content

Commit aa79c4e

Browse files
sync
1 parent ee36246 commit aa79c4e

File tree

2 files changed

+207
-1
lines changed

2 files changed

+207
-1
lines changed

data/rules_02.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,5 +169,5 @@
169169
"type": "object",
170170
"optional": ["solver"],
171171
"doc": "linear solver type"
172-
},
172+
}
173173
]

data/rules_03.json

Lines changed: 206 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,206 @@
1+
[
2+
{
3+
"pointer": "/",
4+
"type": "object",
5+
"required": ["geometry"],
6+
"doc": "Root of the configuration file."
7+
},
8+
{
9+
"pointer": "/geometry",
10+
"type": "list",
11+
"min": 1,
12+
"doc": "List of /geometry objects."
13+
},
14+
{
15+
"pointer": "/geometry/*",
16+
"type": "object",
17+
"required": ["mesh"],
18+
"optional": ["transformation","volume_selection","surface_selection","n_refs","advanced"],
19+
"doc": "Each geometry object stores a mesh, a set of transformations applied to it after loading, and a set of selections, which can be used to specify boundary conditions and materials."
20+
},
21+
{
22+
"pointer": "/geometry/*/mesh",
23+
"type": "file",
24+
"extensions": [".obj",".msh"],
25+
"doc": "Path of the mesh file to load."
26+
},
27+
{
28+
"pointer": "/geometry/*/transformation",
29+
"type": "object",
30+
"default": null,
31+
"optional": ["translation","rotation","scale"],
32+
"doc": "Geometric transformations applied to the geometry after loading it."
33+
},
34+
{
35+
"pointer": "/geometry/*/transformation/translation",
36+
"type": "list",
37+
"default": null
38+
},
39+
{
40+
"pointer": "/geometry/*/transformation/rotation",
41+
"type": "list",
42+
"default": null
43+
},
44+
{
45+
"pointer": "/geometry/*/transformation/scale",
46+
"type": "list",
47+
"default": null
48+
},
49+
{
50+
"pointer": "/geometry/*/transformation/translation/*",
51+
"type": "float",
52+
"default": [0,0,0],
53+
"doc": "Translation vector (2 entries for 2D problems, 3 entries for 3D problems)."
54+
},
55+
{
56+
"pointer": "/geometry/*/transformation/rotation/*",
57+
"default": 0,
58+
"type": "float"
59+
},
60+
{
61+
"pointer": "/geometry/*/transformation/scale/*",
62+
"default": 0,
63+
"type": "float"
64+
},
65+
{
66+
"pointer": "/geometry/*/volume_selection",
67+
"type": "int",
68+
"default": 0
69+
},
70+
{
71+
"pointer": "/geometry/*/volume_selection",
72+
"type": "file",
73+
"extensions": [".txt"]
74+
},
75+
{
76+
"pointer": "/geometry/*/surface_selection",
77+
"type": "int",
78+
"default": null
79+
},
80+
{
81+
"pointer": "/geometry/*/surface_selection",
82+
"type": "file",
83+
"extensions": [".txt"]
84+
},
85+
{
86+
"pointer": "/geometry/*/n_refs",
87+
"type": "int",
88+
"default": 0
89+
},
90+
{
91+
"pointer": "/geometry/*/advanced",
92+
"type": "object",
93+
"optional": ["normalize_mesh"],
94+
"default": null
95+
},
96+
{
97+
"pointer": "/geometry/*/advanced/normalize_mesh",
98+
"type": "bool",
99+
"default": false
100+
},
101+
{
102+
"pointer": "/geometry/*/is_obstacle",
103+
"type": "bool",
104+
"default": "//TODO"
105+
},
106+
{
107+
"pointer": "/geometry/*/enabled",
108+
"type": "bool",
109+
"default": "//TODO"
110+
},
111+
{
112+
"pointer": "/space/",
113+
"type": "object",
114+
"optional": ["advanced"],
115+
"doc": "Spcace parameter//TODO"
116+
},
117+
{
118+
"pointer": "/space/advanced",
119+
"type": "object",
120+
"optional": ["quadrature_order"],
121+
"doc": "//TODO"
122+
},
123+
{
124+
"pointer": "/space/advanced/quadrature_order",
125+
"type": "int",
126+
"default": 1
127+
},
128+
{
129+
"pointer": "/time/",
130+
"type": "object",
131+
"optional": ["tend", "dt", "time_steps"],
132+
"doc": "The time parameters"
133+
},
134+
{
135+
"pointer": "/time/tend",
136+
"type": "float",
137+
"default": 1
138+
},
139+
{
140+
"pointer": "/time/dt",
141+
"type": "float",
142+
"default": 0.1
143+
},
144+
{
145+
"pointer": "/time/time_steps",
146+
"type": "int",
147+
"default": 10
148+
},
149+
{
150+
"pointer": "/contact/",
151+
"type": "object",
152+
"optional": ["enabled", "dhat", "friction_coefficient"],
153+
"doc": "All the parameters to define contacts like collisions, friction coefficient"
154+
},
155+
{
156+
"pointer": "/contact/enabled",
157+
"type": "bool",
158+
"default": false
159+
},
160+
{
161+
"pointer": "/contact/dhat",
162+
"type": "float",
163+
"default": 0.03
164+
},
165+
{
166+
"pointer": "/contact/friction_coefficient",
167+
"type": "float",
168+
"default": 0.0
169+
},
170+
{
171+
"pointer": "/solver/",
172+
"type": "object",
173+
"optional": ["linear", "nonlinear", "advanced"],
174+
"doc": "The parameter for the solver"
175+
},
176+
{
177+
"pointer": "/solver/linear",
178+
"type": "object",
179+
"optional": ["solver"],
180+
"doc": "linear solver type"
181+
},
182+
{
183+
"pointer": "/solver/linear/solver",
184+
"type": "string",
185+
"default": "//TODO",
186+
"doc": "linear solver type"
187+
},
188+
{
189+
"pointer": "/solver/nonlinear",
190+
"type": "object",
191+
"optional": ["solver", "line_search", "grad_norm", "use_grad_norm"],
192+
"doc": "nonlinear solver type"
193+
},
194+
{
195+
"pointer": "/solver/nonlinear/line_search",
196+
"type": "object",
197+
"optional": ["method"],
198+
"doc": "Settings for line searcher"
199+
},
200+
{
201+
"pointer": "/solver/nonlinear/line_search/method",
202+
"type": "string",
203+
204+
}
205+
206+
]

0 commit comments

Comments
 (0)