auto: daily sync
This commit is contained in:
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -65,8 +65,8 @@ penalty = 1e4 × ((σ_max / σ_allow) − 1)² if σ_max > σ_allow
|
||||
| `gamma_stress` | 0.0 | 1.5 | — | FEA stress feedback gain |
|
||||
| `R_0` | 10 | 100 | mm | Base hole influence radius |
|
||||
| `R_edge` | 5 | 40 | mm | Edge influence radius |
|
||||
| `s_min` | 8 | 20 | mm | Min cell size (densest) |
|
||||
| `s_max` | 25 | 60 | mm | Max cell size (sparsest) |
|
||||
| `s_min` | 15 | 35 | mm | Min cell size (densest) — manufacturing floor: 15 mm |
|
||||
| `s_max` | 40 | 60 | mm | Max cell size (sparsest) — lower bound 40 guarantees s_min < s_max |
|
||||
|
||||
Fixed parameters (manufacturing constraints + math constants): see `optimization_engine/isogrid/study.py`.
|
||||
|
||||
|
||||
@@ -355,7 +355,18 @@ def make_objective(rm: TrialRetentionManager):
|
||||
|
||||
print(f" [Brain] Total pockets: {n_pockets_total}")
|
||||
|
||||
# ── 3b. Save per-trial figures (density, mesh, rib pattern) ──────────
|
||||
# ── 3b. Degenerate check — prune near-solid trials early ─────────────
|
||||
# If fewer than N_MIN_POCKETS are generated, the design is essentially a
|
||||
# solid plate (likely all triangles rejected by area/fillet filter).
|
||||
# Return a large penalty immediately — no point burning an NX license.
|
||||
N_MIN_POCKETS = 8
|
||||
if n_pockets_total < N_MIN_POCKETS:
|
||||
print(f" [Brain] Degenerate trial: only {n_pockets_total} pockets "
|
||||
f"(min={N_MIN_POCKETS}) — pruning before NX")
|
||||
trial.set_user_attr("error", f"degenerate:{n_pockets_total}_pockets")
|
||||
return 1e6
|
||||
|
||||
# ── 3d. Save per-trial figures (density, mesh, rib pattern) ──────────
|
||||
t_fig = time.time()
|
||||
n_figs = len(plot_trial_figures(sb_data, trial_dir))
|
||||
print(f" [Plot] {n_figs} figures → trial_{trial_number:04d}/ ({time.time()-t_fig:.1f}s)")
|
||||
|
||||
Reference in New Issue
Block a user