-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathconfig.yaml
148 lines (146 loc) · 3.52 KB
/
config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
problem:
name: ShapeOpt
template_case: 'pitzDaily'
type: 'optimization'
models: auto
parameters:
nCurvePnts:
type: choice
value_type: int
values: [2, 30, 50]
is_ordered: False
Ctrl1X:
type: range
value_type: float
bounds: [0, 0.048]
log_scale: False
Ctrl1Y:
type: range
value_type: float
bounds: [-0.05, 0.02]
log_scale: False
Ctrl2X:
type: range
value_type: float
bounds: [0.05, 0.098]
log_scale: False
Ctrl2Y:
type: range
value_type: float
bounds: [-0.05, 0.02]
log_scale: False
Ctrl3X:
type: range
value_type: float
bounds: [0.10, 0.148]
log_scale: False
Ctrl3Y:
type: range
value_type: float
bounds: [-0.05, 0.02]
log_scale: False
Ctrl4X:
type: range
value_type: float
bounds: [0.15, 0.198]
log_scale: False
Ctrl4Y:
type: range
value_type: float
bounds: [-0.05, 0.02]
log_scale: False
Ctrl5X:
type: range
value_type: float
bounds: [0.20, 0.248]
log_scale: False
Ctrl5Y:
type: range
value_type: float
bounds: [-0.05, 0.02]
log_scale: False
Ctrl6X:
type: range
value_type: float
bounds: [0.25, 0.28]
log_scale: False
Ctrl6Y:
type: range
value_type: float
bounds: [-0.03, 0.02]
log_scale: False
objectives:
PressureDrop:
mode: 'shell'
command: ['./getPressDiff.sh']
threshold: 200
minimize: True
lower_is_better: True
ContinuityErrors:
mode: 'shell'
command: ['awk', 'function abs(v) {return v < 0 ? -v : v} /continuity errors/{a=$15} END{print(abs(a))}', 'log.$CASE_NAME']
threshold: 1.0
minimize: True
lower_is_better: True
meta:
metric_value_mode: 'local'
case_subdirs_to_clone:
- 0orig
- Allrun.slurm
- geometry
- openscad
- patches.py
- getPressDiff.sh
- pressureDiff.py
- case.foam
- getImage.sh
- renderResults.py
clone_destination: "./trials"
case_run_mode: slurm
#case_run_command: ['./Allrun']
case_run_command: ['sbatch', '-J', '$CASE_NAME', './Allrun.slurm', '$CASE_PATH', '/fsx/OpenFOAM/OpenFOAM-v2212']
# This works if accounting is enabled on SLURM
#slurm_status_query: ['sacct', '--name', '$CASE_NAME', '-o', 'JobName%60,State', '-n']
# Instead we can use the less reliable scontrol
slurm_status_query: ['../getSLURMJOBStatus.sh', '$CASE_NAME']
n_trials: 90
n_parallel_trials: 5
# How about diverging cases???
ttl_trial: 3600
init_poll_wait: 5
poll_factor: 1.5
timeout: 10
use_saasbo: False
n_pareto_points: 5
scopes:
"/system/geometryDict":
nCurvePnts: "nCurvePnts"
Ctrl1X: "Ctrl1X"
Ctrl1Y: "Ctrl1X"
Ctrl2X: "Ctrl2X"
Ctrl2Y: "Ctrl2Y"
Ctrl3X: "Ctrl3X"
Ctrl3Y: "Ctrl3Y"
Ctrl4X: "Ctrl4X"
Ctrl4Y: "Ctrl4Y"
Ctrl5X: "Ctrl5X"
Ctrl5Y: "Ctrl5Y"
Ctrl6X: "Ctrl6X"
Ctrl6Y: "Ctrl6Y"
stopping_strategy:
improvement_bar: 0.05
min_trials: 60
window_size: 10
visualize:
# Replot every 15 secs
update_interval: 15
# Number of latest trials to generate images for
n_figures: 3
# Height value for a single objective graph in pixels
graph_height: 400
# Generate an image of the trial's final state
# This needs to return a URI to the generate image (can be local)
figure_generator: ['./getImage.sh']
# IP/Port to expose the dashboard app
host: '0.0.0.0'
port: 8888