code wiki / (root) / nx_supports_physics_test.nx

nx_supports_physics_test.nx

buildroot/runtime/nx_supports_physics_test.nx

6048 B117 linesdepth 11pulls 26 transitivereach 0 importersview sourcekind gate/prooftopic supports
docsdependenciesstructsconstsfunctions

about

nx_supports_physics_test.nx -- proves bits-up physics-aware pillar sizing produces DIFFERENT pillar dimensions for DIFFERENT loads within the same plan. Industry baseline (Orca/Bambu/Cura/Prusa) cannot do this -- they emit identical pillars regardless of load. Closed-form invariants: (a) plan_add_pillar_physics with LIGHT load on PLA -> MIN footprint (matches industry baseline at the light end) (b) plan_add_pillar_physics with HEAVY load on PLA -> footprint > MIN (industry would underbuild here) (c) Two pillars in same plan with different loads -> different per-pillar footprints (industry: identical regardless) (d) Same load, stiffer material (PEEK) -> smaller footprint than PLA (industry: identical footprint regardless of material) (e) Emit produces a square that scales with per-pillar footprint (verify by ensuring HEAVY pillar emits a bigger square than a NEAR-BY LIGHT pillar in the same emit pass) (f) Merge policy: heavier load at same XY EXTENDS existing footprint (never shrinks) expect_exit: 0 license_tier: ORIGINAL

dependencies 7 imports · 0 importers

nx_syscalls.nx nx_polygon.nx nx_machine_graph.nx nx_material_profile.nx nx_gcode_emit.nx nx_pillar_physics.nx nx_supports.nx nx_supports_physics_test.nx

imports: nx_syscalls.nxnx_polygon.nxnx_machine_graph.nxnx_material_profile.nxnx_gcode_emit.nxnx_pillar_physics.nxnx_supports.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main nx_material_profile_generi nx_material_profile_alloc sys_mmap nx_material_profile_generi nx_material_profile_alloc ↻ nx_support_plan_new sys_mmap ↻ nx_support_plan_add_pillar nx_pillar_footprint_for_lo nx_cantilever_moment nx_pillar_min_footprint nx_icbrt_q14 nx_icbrt nx_abs nx_machine_graph_qidi_xmax nx_machine_graph_alloc sys_mmap ↻ nx_gemit_new sys_mmap ↻ nx_gcex_filament_xsect_q14 nx_muldiv_i64 nx_i128_alloc nx_i128_mul_i64 nx_i128_mul_u64 nx_i128_neg nx_i128_div_i64 nx_i128_is_neg nx_i128_neg ↻ nx_i128_udiv_u64 nx_support_plan_emit_layer nx_gemit_cstr nx_gemit_byte nx_polygon_make_square nx_polygon_alloc sys_mmap ↻ nx_polygon_add_vert nx_polygon_set_vert nx_polygon_vert_ptr nx_gemit_polygon

structs

none

consts

32const Q14: i64 = 16384

functions

34func main() -> i64