Check a problem YAML
check_problemLoads and voxelizes a topology optimization YAML before the optimizer run, returning facts, estimates, and warnings to catch input and solver issues early.
Instructions
Load and voxelize a problem YAML (no optimizer run; with settings.solver auto it runs the short self-test of gpu-mg in a child process, at most 60 s: seconds the first time on a device and driver, then the cached pass). Returns facts, estimates and warnings.
Use it before run_topopt, also for your own YAML and STLs. Read the facts and tell the user the numbers that matter.
Resource topopt://levers: the key for a symptom of these facts, and the price of a try.
yaml_path: the problem YAML (relative paths start at the work folder).
Another solver: settings.solver (auto, cholesky, pardiso, amg, gpu-mg) or --solver of topopt run and check, not of run_topopt. For gpu-mg, settings.gpu_device (auto, a number from topopt check, or a part of the name).
Warnings are facts; a warning that starts with "settings.solver is" (the solver cannot run here) means run_topopt will stop with the same message. A warning that starts with "fact: settings.iterations" says that the passes end before the last stage of settings.beta_schedule (a grey design): it gives the options (iterations, or the schedule scaled to the passes) and the measured price. It does not block the run. On a wrong input: {"ok": false, "error": ...}.
Reply keys: resource topopt://replies/check_problem (the meaning of each key).
A settings.perimeter_max_mm2 below the smallest possible perimeter gives {"ok": false, "error": ...} with the options.
The reply key lost_force has, for each load case, the total force, the force on nodes that are also fixed (the solver drops it) and the lost percent.
Key fine_pass: the voxel that the part needs (voxel_mm, one value; recommend; limiting: the feature that sets it, its thickness and the voxels across now and needed; and with recommend the fact line). run_topopt with fine_pass=true or fine_from runs a fine pass.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| yaml_path | Yes |