Repository navigation
CARLA fixed heading bounds
A LINE's stored geometry heading does not change with road s. Its reference direction and lateral-offset direction use that fixed heading. The lane width and lane-center tangent can still change.
The bounds use an explicit fixed-heading helper for these two call sites. They do not infer constant provenance from a singleton interval or from zero sampled derivatives. The generic variable-heading path stays unchanged.
The existing trigonometric bounds enclose every permitted scalar result, including fused and unfused arithmetic and possible quadrant branches. For a fixed input, each compiled call site supplies one fixed Float64 coefficient within that range. Its derivatives with respect to s are zero. The helper stores this uncertainty in the coefficient's value interval. Outer coordinate operations retain their own scalar-rounding error bounds.
Different call sites can select different allowed coefficients. Both the full-domain and translated expansion models enclose those fixed choices. Lost correlation can widen the result; it does not justify a tighter bound. Unsupported or nonfinite phases retain the generic unknown derivatives.
This helper does not claim that arbitrary rounded functions are continuous or monotone. A variable singleton is still an expansion point. Even heading plus t cubed has zero first and second derivatives at t=0 without being a constant function. Such inputs keep the generic uncertain branch.
The world-signals fixture has a LINE at origin (55,-10), with stored heading pi/4, lane width 3.5, zero lane offset and zero elevation. The query is exactly (55.25,5,3) in CARLA coordinates.
Conservative selector arithmetic includes both adjacent quadrants. The old branch union therefore discarded derivative information in every spatial cell, although the heading itself did not vary. Subdivision could not remove that artificial loss of information.
Independent stored-polynomial and rounding bounds give normalized distance curvature close to 0.125. Their enclosure gap is at most 4.53e-14, below the unchanged accuracy allowance of about 7.25e-13. No node, quadrature, depth, accuracy or test limit changes.
Controls retain the exact failing input. They also cover neighboring headings, negative headings, finite phase boundaries, unsupported phases, variable singleton headings, and a near-constant nonzero derivative. A separate h=0.1 control encloses both one-ULP-separated cosine results from fused and unfused Horner evaluation.
This correction changes numerical proof information, not scalar positions or public pose evaluation. Other lane refinement, admission, coverage and performance requirements remain separate qualification gates.
Tutorials
How-to
Reference
- Scene graph
- Rotations
- Cameras
- Geometry
- Geometry addons
- Lofts and clipping groups
- Sculptor
- Procedural generators
- Meshes and assets
- Lines
- Points and sprites
- Helpers
- Scene objects
- Animated objects
- Raycasting
- Curves and paths
- Animation
- Skinning
- Materials
- Node materials
- TSL functions
- Lights
- Lighting addons
- Fog
- Textures
- Renderer
- Renderer hooks and material flags
- Rasterization
- GPU backend
- Render target
- Post-processing
- GPU computation
- Compute nodes
- Progressive light map
- Gaussian splats
- Voxel global illumination
- SVG renderer
- Image files
- Image decode queue
- Model files
- More model files
- Exporters
- Scene JSON
- Windowing and controls
- Math
- Norm consumers
- Math addons
- Units
- Coverage tool
- Commands
- Examples
- Benchmarks
- Extensions
- Shared physics
- Physics query snapshots
- Continuous collision
- Tick force restoration
- Water
- Animals
- Buildings
- CARLA
- Femur
- Tibia
- Fibula
- Patella
- Knee
- Muscles
- Vessels
- Lymph
- Nerves
- Integument
- Leg
- Foot
- Pelvis
- Torso
- Arm
- Hand
- Head
- Genome
- Game humanoid
- Humanoid fidelity
- Audio-aligned game faces
- Converted assets
- Mesh quality
- Segment inertia
Explanation
- Software rasterizer
- Scene graph as an array
- Linear color
- Normals are not colors
- Perspective correction
- Fixed-point coverage
- Per-fragment shading
- Mipmaps
- Sorted transparency
- Types and checks
- Render hooks as a trait
- Shared CPU and GPU code
- Bands and threads
- PNG structure
- Extensions beside the port
- CUDA teardown hang
- Mojo compiler hang