API reference
Parameters and geometry
Scalar and vector parameters, and extraction of a tree’s parameters.
Parameters
Parameter types and helpers.
| geometry.Parameter | Base class for optimizable parameters. |
| geometry.Scalar | Scalar parameter (radius, distance, angle, scale, strength, etc.). |
| geometry.Vector | 3D vector parameter (position, offset, direction, size). |
| geometry.Vector2 | 2D vector parameter (sketch points, planar offsets, profile vertices). |
| geometry.as_parameter | Convert a raw value to a Parameter object automatically. |
| geometry.deduplicate_params | Deduplicate parameters by identity, using param.name as canonical key. |
Parameter extraction
Read free and fixed parameters from a tree; write values back.
| extract_parameters | Extract parameters from a Fluent tree. |
| apply_parameters | Write solved/optimized values back into a tree’s free parameters. |
Sketches and construction
Sketch planes, 2D profiles, features that generate solids, and face references.
Sketches
Work planes and closed polygon profiles.
| construction.SketchPlane | A work plane the sketch entities live on. |
| construction.PolygonProfile | Closed polygon profile in a sketch plane — a construction-tree node. |
Features
Extrude, revolve and loft a profile into a solid.
| construction.extrude | Extrude a 2D profile into a solid SDF. |
| construction.revolve | Revolve a 2D profile around its sketch plane’s Y axis into a solid SDF. |
| construction.loft | Loft between two 2D profiles into a solid SDF. |
| construction.Solid | Factories creating a primitive and its construction mirror at once. |
| construction.ConstructionPrimitive | A primitive with an editable placement, mirroring the SDF it generates. |
Face references
Faces and axes of generated solids, used to place sketch planes.
| construction.Face | One analytic planar face of a construction feature. |
| construction.FaceSet | The analytic faces of one feature, built on first use. |
| construction.Feature | The record a generator leaves on the profiles it consumed. |
| construction.Axis | A feature’s axis of revolution, exposed as a reusable reference. |
Constraints
Constraint types, the constraint solver, and degree-of-freedom analysis.
Constraint types
One class per geometric relation.
| constraints.Constraint | Base class for geometric constraints. |
| constraints.DistanceConstraint | Constraint that fixes the distance between two points/vectors. |
| constraints.AngleConstraint | Constraint that fixes the angle between two vectors. |
| constraints.HorizontalConstraint | Constraint that forces two sketch points onto a horizontal line. |
| constraints.VerticalConstraint | Constraint that forces two sketch points onto a vertical line. |
| constraints.CoincidentConstraint | Constraint that forces two sketch points to coincide. |
| constraints.FixedConstraint | Constraint that anchors a free parameter to a fixed target value. |
| constraints.EqualLengthConstraint | Constraint that forces two sketch edges to have equal length. |
| constraints.PointOnLineConstraint | Constraint that forces a sketch point onto the infinite line through two points. |
| constraints.ParallelConstraint | Constraint that forces two vectors to be parallel. |
| constraints.PerpendicularConstraint | Constraint that forces two vectors to be perpendicular. |
| constraints.ParallelEdgesConstraint | Constraint that forces two sketch edges to be parallel. |
| constraints.PerpendicularEdgesConstraint | Constraint that forces two sketch edges to be perpendicular. |
Solving and projection
Solve constraints and project parameters onto the constraint manifold or bounds.
| solve_constraints | Solve geometric constraints attached to a scene’s free parameters. |
| constraints.satisfy_constraints | Project a construction/SDF tree onto its attached constraints in place. |
| constraints.constraint_residuals | Evaluate the constraint residuals at free_params. |
| constraints.project_to_manifold | Project free_params onto the constraint manifold via Newton correction(s). |
| constraints.make_manifold_projection | Return an optax transform that projects params onto the constraint manifold. |
| constraints.project_bounds | Clamp free_params to per-parameter bounds declared in metadata. |
| constraints.make_bounds_projection | Return an optax transform that clamps params to their declared bounds. |
Degrees of freedom
Residuals, parameter vectors and null-space maps.
| constraints.all_parameters | Return a deduplicated list of all parameters referenced by constraints. |
| constraints.total_dof_reduction | Return the total number of DOF removed by a list of constraints. |
| constraints.build_residual_fn | Build a flat residual function over all constraints. |
| constraints.compute_param_vector | Build the initial flat parameter vector from an ordered params dict. |
| constraints.unpack_param_vector | Inverse of compute_param_vector: split a flat array back into named values. |
| constraints.null_space | Null-space projection and DOF analysis for constrained parameter systems. |
| constraints.NullSpaceMap | Null-space projection matrix that operates directly on parameter dicts. |
Solids
SDF primitives, booleans, transforms, patterns and measures.
Base class
Base class of all SDF nodes.
| SDF | Abstract base class for Signed Distance Functions. |
Primitives
Standard shapes and the polygon solids produced by construction features.
| sdf.Primitive | Base class for primitive SDFs (leaf nodes in the SDF tree). |
| sdf.Box | Axis-aligned box centered at origin. |
| sdf.RoundBox | Box with rounded edges centered at origin. |
| sdf.Sphere | Sphere centered at origin with given radius. |
| sdf.Cylinder | Cylinder along Z-axis centered at origin. |
| sdf.Capsule | Capsule (cylinder with spherical caps) along Z-axis. |
| sdf.Torus | Torus in XY plane centered at origin. |
| sdf.Plane | Infinite horizontal plane at y = height. |
| sdf.primitives.ExtrudedPolygon | Solid formed by extruding a polygon profile along the local Z axis. |
| sdf.primitives.RevolvedPolygon | Solid of revolution: a polygon profile revolved around the local Y axis. |
| sdf.primitives.LoftedPolygon | Solid lofted between two polygon profiles along the local Z axis. |
| sdf.primitives.polygon_sdf_2d | Exact signed distance from 2D point(s) to a simple polygon. |
Booleans
Union, intersection, difference, xor and smooth blends.
| sdf.Union | Union of two or more SDFs (combines all shapes). |
| sdf.Intersection | Intersection of two or more SDFs (only overlapping region). |
| sdf.Difference | Difference of SDFs (subtract all subsequent from first). |
| sdf.Xor | XOR of two SDFs (symmetric difference). |
| sdf.BooleanOp | Base class for boolean operation SDFs. |
| sdf.union | Union boolean operation. |
| sdf.intersection | Intersection boolean operation. |
| sdf.difference | Difference boolean operation. |
| sdf.xor | XOR boolean operation. |
| sdf.smooth_min | Smooth minimum function for blending SDFs (Inigo Quilez’s version). |
| sdf.smooth_max | Smooth maximum function for blending SDFs. |
Transforms
Affine transforms, deformations and field operations.
| sdf.Translate | Translate an SDF by a vector offset. |
| sdf.Rotate | Rotate an SDF around an axis. |
| sdf.Scale | Scale an SDF component-wise. |
| sdf.Twist | Twist deformation around an arbitrary axis. |
| sdf.Shell | Hollow shell of a shape’s surface: \|f(p)\| - thickness/2. |
| sdf.Offset | Offset (grow/shrink) a shape’s surface: f(p) - distance. |
| sdf.Mirror | Mirror a shape across a plane by reflecting the query point. |
| sdf.shell | Hollow shell of shape’s surface with the given total thickness. |
| sdf.offset | Grow (positive) or shrink (negative) shape by distance. |
| sdf.mirror | Mirror image of shape across a plane. |
Patterns
Linear and polar patterns.
| sdf.LinearPattern | Union of count copies translated along a direction. |
| sdf.PolarPattern | Union of count copies rotated evenly around an axis. |
| sdf.linear_pattern | count copies of shape spaced along direction. |
| sdf.polar_pattern | count copies of shape rotated evenly around an axis. |
Measure
Volume and mass.
| sdf.volume | Differentiable volume estimation for SDFs. |
| sdf.material_mass | Estimate the mass of an SDF from its material field, as a JAX scalar. |
Functionalize and parametrization
Convert solids and scenes to pure functions of their parameters; reparametrize for optimization.
Functionalize
SDF trees and scenes as pure functions of parameter dictionaries.
| functionalize | Compile parameterized SDF trees to pure JAX functions. |
| functionalize_scene | Compile a geometry SDF tree to pure (sdf, material_fn) closures. |
| functionalize.functionalize_parametric | Compile an SDF to a function whose parameters are arguments. |
| functionalize.functionalize_scene_parametric | Compile a scene so its parameters are arguments, not literals. |
Parametrization
Unconstrained reparametrization and parameter scaling.
| to_unconstrained | Map constrained free_params to an unconstrained dict. |
| to_constrained | Map unconstrained params back to constrained space. |
| compute_param_scales | Compute per-parameter normalization scales. |
| normalize | Divide unconstrained params by their scales → O(1) optimizer space. |
| unnormalize | Multiply normalized params by their scales → unconstrained space. |
| to_normalized | to_unconstrained followed by normalize. |
| from_normalized | unnormalize followed by to_constrained. |
Meshing
Dual contouring from SDF to surface mesh, export and diagnostics.
Extraction
extract_mesh and its stages: grid sampling, edge crossings, QEF vertices, faces.
| meshing.extract_mesh | Extract a feature-preserving dual-contour mesh from an implicit field. |
| meshing.Mesh | Dual-contour surface mesh. |
| meshing.GridSpec | Regular sampling grid described by static Python values. |
| meshing.sample_grid | Evaluate the field at every lattice vertex. |
| meshing.find_crossing_edges | Find every lattice edge whose endpoints lie on opposite sides of level. |
| meshing.CrossingEdges | Lattice edges whose endpoint field values straddle the isovalue. |
| meshing.edge_hermite_data | Locate the surface crossing on every edge and evaluate its gradient. |
| meshing.HermiteData | Surface crossings on grid edges with field gradients. |
| meshing.detect_edges | Sample, detect crossing edges, and refine Hermite data in one call. |
| meshing.qef_vertices | Place one vertex per active cell from its Hermite tangent planes. |
| meshing.sharp_qef_vertices | Place vertices with a rank-revealing QEF that lands exactly on features. |
| meshing.dual_faces | Connect cell vertices with one oriented quad per crossing edge. |
Adaptive extraction and simplification
Sparse lattices, bounds fitting and simplification.
| meshing.surface_cells | Find every unit cell that may contain the level set, by octree descent. |
| meshing.sparse_crossing_edges | Detect crossing edges without sampling the full lattice. |
| meshing.bounds.fit_bounds | (origin, size) of a box around the part, found at its own scale. |
| meshing.bounds.boundary_inside | Whether any lattice vertex on the grid’s six faces lies inside the part. |
| meshing.simplify_mesh | Simplify a dual-contour mesh by error-bounded, feature-safe collapses. |
Export and diagnostics
OBJ, STL and STEP export; mesh quality checks.
| meshing.save_obj | Write a Wavefront OBJ file with merged planar n-gon faces. |
| meshing.save_stl | Write the mesh triangles as an STL file. |
| meshing.save_step | Write a minimal faceted STEP AP214 boundary representation. |
| meshing.remove_slivers | Weld coincident vertices and drop the triangles that collapse. |
| meshing.merge_planar_faces | Merge coplanar mesh quads into large polygon faces. |
| meshing.mesh_report | Bundle every diagnostic into one report. |
| meshing.surface_deviation | Sampled one-sided deviation of the mesh from the implicit surface. |
| meshing.triangle_quality | Triangle shape statistics: minimum angles, aspect ratios, degeneracy. |
| meshing.self_intersections | Sampled self-intersection test over non-adjacent triangle pairs. |
Simulation
Simulation meshes, studies, boundary conditions, node selections, material properties and solver backends.
Meshes
Simulation meshes and SDF-to-hex/tet meshing.
| fem.SimMesh | A declarable, named meshing intent — the scene program’s mesh object. |
| fem.HexMesh | A HEX8 volume mesh extracted from an SDF. |
| fem.TetMesh | A TET4/TET10 volume mesh whose boundary vertices are DC surface vertices. |
| fem.sdf_to_hex_mesh | Extract a HEX8 volume mesh from an SDF on a regular grid. |
| fem.sdf_to_tet_mesh | Extract the DC surface of sdf on grid and tet-mesh its inside. |
| fem.recompute_points | Recompute hex-mesh vertex positions differentiably with frozen topology. |
| fem.recompute_tet_points | Recompute tet-mesh vertex positions differentiably with frozen topology. |
| fem.project_points | Newton-project points onto the SDF zero set along the field gradient. |
| fem.Discretization | A discretized scene: what studies, the optimiser, the viewer and selections need. |
| fem.Surface | The boundary a discretization shows and selects on. |
| fem.FaceGroup | A batch of boundary faces tagged for boundary-condition selection. |
| fem.select_faces | Select boundary faces whose center (and normal) satisfy a predicate. |
| fem.faces_from_nodes | Boundary quads spanned by a node set (all four corners selected). |
| fem.tet_faces_from_nodes | Boundary triangles all three of whose corners belong to nodes. |
Mesh quality
Element quality metrics.
| fem.scaled_jacobians | Per-element scaled Jacobian quality metric of each hex. |
| fem.aspect_ratios | Per-element edge aspect ratio of each hex. |
| fem.corner_tet_volumes | Signed corner-tetrahedron volumes (determinants) of each hex. |
| fem.tet_aspect_ratios | Longest-to-shortest edge ratio per tet, at least 1. |
| fem.tet_radius_ratios | Normalized radius ratio 3 r_in / r_circ per tet, in (0, 1]. |
Studies
Thermal and elastic studies and their results.
| fem.ThermalStudy | Declarative steady-state heat conduction study. |
| fem.ElasticStudy | Declarative small-strain linear elasticity study. |
| fem.SimulationResult | One solved study: named, typed, inspectable, exportable. |
| fem.ThermalProblem | Steady heat conduction: −∇·(k∇T) = q with conditions by selection. |
| fem.ElasticProblem | Small-strain linear elasticity: clamped selections, tractions by selection. |
| studies.capture_studies | Collect every study constructed inside this context. |
| studies.declared_studies | The studies declared so far in the active capture context. |
| studies.register_study | Add a study to the active :func:capture_studies context, if any. |
| fem.capture_sim_meshes | Collect every :class:SimMesh constructed inside this context. |
Boundary conditions
Temperature, heat flux, fixed and traction conditions.
| fem.Dirichlet | Prescribed temperature on a set of boundary nodes. |
| fem.HeatFlux | Prescribed heat inflow per area on the faces spanned by a selection. |
| fem.Fixed | Fully clamped node set (all displacement components zero). |
| fem.Traction | Constant traction (force per area) on the faces spanned by a selection. |
Node selections
Selections of mesh nodes defined by position.
| studies.Nodes | Factory namespace for :class:NodeSelection values. |
| studies.NodeSelection | A composable, mesh-independent description of a region of space. |
| studies.selection_from_description | Rebuild a :class:NodeSelection from its :meth:~NodeSelection.describe payload. |
| studies.boundary_node_mask | Boolean mask over mesh nodes that lie on the boundary surface. |
| studies.BoundaryMesh | What :meth:NodeSelection.resolve needs of a mesh. |
Material properties
Per-cell material properties sampled from the scene.
| fem.properties.sample_material_field | Sample the whole material field at every element centroid. |
| fem.properties.sample_cell_property | Sample one physical property per element, validated. |
| fem.properties.maybe_sample_cell_property | Sample a property per element, or return None when the scene lacks it. |
| fem.properties.cell_centroids | Element centroids, (C, 3), differentiable in points. |
| fem.properties.cell_volumes | Element volumes, (C,), differentiable in points. |
| fem.properties.total_mass | Mass of the meshed domain, sum(rho_e * V_e). |
| fem.properties.quantize_to_materials | Snap a per-element property field onto a finite set of named materials. |
Solver backends
Solver backend protocol and registry.
| fem.backends.SolverBackend | Protocol every FEM backend implements. |
| fem.backends.get_backend | Resolve a backend name (or pass an instance through). |
| fem.backends.register_backend | Register a solver backend factory under name. |
| fem.backends.available_backends | Names of registered backends (not necessarily importable). |
Gmsh tet meshing
Tet10 meshes through Gmsh and node ownership.
| fem.gmsh.gmsh_available | Whether the optional gmsh wheel is importable. |
| fem.gmsh.gmsh_version | The installed Gmsh version string. |
| fem.gmsh.sdf_gmsh_tet_mesh | The whole public route: dual-contour scene on grid, mesh it with Gmsh. |
| fem.gmsh.gmsh_tet_mesh | Mesh a geometry with Gmsh and give every node its owners. |
| fem.gmsh.tet_mesh_from_gmsh | Wrap a :class:GmshMesh as the FEM layer’s :class:GmshTetMesh — static. |
| fem.gmsh.GmshMesh | A Gmsh tet mesh with every node owned — a static record. |
| fem.gmsh.GmshTetMesh | A :class:~cadjoint.fem.tetmesh.TetMesh that came from Gmsh. |
| fem.gmsh.gmsh_topology | Mesh a solid with Gmsh — the whole of the opaque part, and no more. |
| fem.gmsh.dc_surface_stl | Dual-contour sdf on grid and return its surface as STL text. |
| fem.gmsh.surface_stl | A dual-contour :class:~cadjoint.meshing.Mesh as ASCII STL text. |
| fem.gmsh.patch_table | The scene’s public patch fields, world frame, flattened in table order. |
| fem.gmsh.design_values | The scene’s free-parameter values, name to array (empty for a callable). |
| fem.gmsh.snap_toward_patches | Project boundary nodes onto the scene’s zero set where that helps ownership. |
| fem.gmsh.assign_ownership | Tag every node with the patches that own it, by residual alone. |
| fem.gmsh.owned_nodes | The :class:~cadjoint.plugins.OwnedNodes record of a topology. |
Optimization
Optimization declarations and runs.
| optimize.Optimization | Declarative gradient-based optimization of a scene’s free parameters. |
| optimize.OptimizationRun | One finished optimization: its descent history and both endpoints. |
| optimize.capture_optimizations | Collect every optimization constructed inside this context. |
Materials
The Material class and the material catalogue.
| Material | Material properties for physically-inspired shading and simulation. |
| materials.catalogue | Every catalogue material, freshly constructed. |
| materials.aluminium_6061 | Aluminium alloy 6061-T6 — the default structural/heatsink aluminium. |
| materials.copper_c11000 | Copper C11000 (electrolytic tough pitch), annealed — heat spreaders. |
| materials.steel_1018 | AISI 1018 mild carbon steel, cold drawn — general structural steel. |
| materials.titanium_ti6al4v | Ti-6Al-4V (Grade 5), annealed — the standard aerospace titanium. |
| materials.fr4 | FR-4 woven-glass/epoxy laminate — the standard PCB substrate. |
| materials.silicon | Single-crystal silicon, intrinsic, at 300 K — dies and MEMS. |
| materials.thermal_pad | A filled-silicone thermal interface pad (gap filler). |
| materials.pla | PLA (polylactic acid) — the default FDM printing plastic. |
Rendering and shader compilation
Forward raymarcher, construction overlay, WGSL compilation and the notebook viewer.
Forward renderer
Scenes, cameras, settings and render functions.
| render.Scene | Geometry, camera, lighting, and background for one forward render. |
| render.Camera | Perspective camera used by :func:cadjoint.render.render_scene. |
| render.RenderSettings | Quality and performance controls for the forward renderer. |
| render.render_scene | Render a :class:Scene with an explicit quality preset or settings. |
| render.render_raymarched | Render an SDF with :func:raymarch and display it with matplotlib. |
| render.raymarch | Forward sphere-tracing renderer. |
| render.make_gradient_sky | Create a simple procedural gradient sky as a (H, W, 3) env-map array. |
Construction overlay
Draw sketch planes and profiles over a render.
| render.project_points | Project world-space points through a camera to pixel coordinates. |
| render.draw_profile | Draw a PolygonProfile: closed edge loop plus vertex handles. |
| render.draw_plane | Draw a SketchPlane as a dashed square outline of size 2·extent. |
Shader compilation
Compile SDFs and scenes to WGSL.
| backends.compile_sdf_to_wgsl | Compile a JAX SDF function to a WGSL function string. |
| backends.compile_scene_to_wgsl | Compile an SDF and its material evaluation to one WGSL module. |
| backends.wgsl.compile_scene_with_uniforms | Compile a scene to WGSL whose parameters live in a uniform buffer. |
| backends.wgsl.ShaderProgram | WGSL source plus the parameter buffer its entry points read. |
| backends.wgsl.ShaderParameter | One design parameter’s place in the generated uniform buffer. |
Notebook viewer
WebGPU viewer widget for Jupyter.
| viewer.widget.SDFViewer | Interactive WebGPU SDF viewer for Jupyter notebooks. |
Plugins and extension contracts
Plugin types, the plugin registry and the extension contracts.
Plugins
Plugin classes and probe results.
| plugins.Plugin | The interface every cadjoint plugin satisfies. |
| plugins.PythonPlugin | A cadjoint kind, filled by an object imported into this process. |
| plugins.TesseractPlugin | A cadjoint kind, filled by a Tesseract over one of the transports. |
| plugins.Capabilities | What a plugin can do, read off what it declares. |
| plugins.PluginProbe | A readiness report for one plugin instance. |
| plugins.PluginMismatch | The running component is not the one the configuration expected. |
| plugins.PluginConfigError | A plugin spec is malformed or names a transport it cannot serve. |
| plugins.Differentiable | Differentiable[Array]: the component carries a derivative through this. |
Registry and configuration
Plugin lookup and configuration.
| plugins.PluginRegistry | The plugins this process knows about, and the instances it has open. |
| plugins.PluginSpec | Which Tesseract.from_* call stands behind one plugin name. |
| plugins.registry | Which component plays which cadjoint kind, and where it runs. |
| plugins.set_registry | Install new as the process-wide registry, returning the old one. |
| plugins.get_plugin | The plugin registered under name in the process-wide registry. |
| plugins.plugin_for_kind | The plugin currently filling kind in the process-wide registry. |
| plugins.register_plugin | Register spec in the process-wide registry. |
| plugins.available_plugins | Names registered in the process-wide registry. |
| plugins.build_registry | Assemble a registry from built-ins, entry points and the config file. |
| plugins.builtin_specs | Specs for every component shipped in this checkout. |
| plugins.entry_point_specs | Specs contributed by installed distributions. |
| plugins.load_config | Load the plugins config in effect. |
| plugins.parse_config | Split a parsed config document into specs and per-kind defaults. |
| plugins.config_path | The plugins.toml in effect, or None when there is none. |
| plugins.runtime_scratch | One scratch directory for this process, removed when it exits. |
| plugins.scratch_root | The directory this machine keeps Tesseract run scratch under. |
Extension contracts
Interfaces per plugin kind and their value types.
| plugins.NodeMap | node_map: design parameters to the node positions of a Gmsh mesh. |
| plugins.FeatureEdges | feature_edges: the exact feature curves of a scene, to draw. |
| plugins.BRepExtractor | brep: the derived boundary representation, kept in-process. |
| plugins.StepExporter | step_export: analytic STEP from the derived B-rep. |
| plugins.Drag | drag: move a B-rep handle by solving for the design that fits. |
| plugins.OwnedNodes | Every node of a Gmsh mesh, with the patches that own it — the seam’s record. |
| plugins.EdgeSet | The feature curves of a scene, as polylines ready to draw. |
| plugins.DragOutcome | What a drag did, and why — the drag kind’s result. |
Flow solver (prototype)
Brinkman-penalised lattice Boltzmann flow and energy solver.
Domain and solve
Grid, solid fraction and steady solve.
| flow.FlowGrid | A fixed axis-aligned lattice of cell centres in world coordinates. |
| flow.solid_fraction | Smooth solid indicator from signed distances. |
| flow.sample_solid_fraction | Evaluate a scene SDF on the grid and squash it to a solid fraction. |
| flow.FlowConfig | Static settings for one flow problem. |
| flow.FlowResult | The converged flow and the scalars read off it. |
| flow.solve | Converge the penalised flow and read off both objectives. |
| flow.convergence | Run the march without early exit and return its residual history. |
| flow.recommended_alpha_max | A drag strong enough that the solid reads as impermeable. |
| flow.SteadyOptions | Convergence settings for the forward iteration and the adjoint solve. |
| flow.steady_populations | The converged populations, differentiated through the fixed point. |
| flow.iterate_to_steady | Pseudo-time march to the fixed point, without building a tape. |
| flow.unrolled_populations | The same march with the tape left on, for cross-checking the adjoint. |
| flow.residual_history | The same march, reporting the residual after every chunk. |
Flow studies
Conjugate heat-transfer studies and boundary regions.
| flow.FlowStudy | Declarative conjugate heat transfer in forced convection. |
| flow.FlowStudyResult | Everything one conjugate solve produced, fields and scalars alike. |
| flow.Inlet | Air entering the duct at the y = 0 plane. |
| flow.Outlet | Air leaving at the y = NY-1 plane, against a fixed pressure. |
| flow.Walls | The duct’s lateral walls – the x and z extremes of the lattice. |
| flow.HeatSource | Total power injected over the cells a selection covers. |
| flow.HeldTemperature | Cells pinned at a temperature, whatever the flow does around them. |
| flow.region_mask | Boolean mask over cell centres for a node selection, volumetrically. |
Energy equation
Steady energy equation.
| flow.EnergyConfig | Static settings for one conjugate energy solve. |
| flow.solve_temperature | Solve the conjugate energy equation on the lattice. |
| flow.conductivity | Cell conductivity, interpolated linearly between air and solid. |
Objectives
Scalar objectives and output fields.
| flow.pressure_drop | Mean pressure across the inlet plane minus across the outlet plane. |
| flow.heat_transfer_proxy | int chi \|u\| – air in motion where the metal is. |
| flow.thermal_resistance | (T_peak - T_inlet) / power — the number a data sheet quotes. |
| flow.peak_temperature | The hottest cell in the solid. |
| flow.mean_temperature | Solid-fraction-weighted mean temperature: int chi T / int chi. |
| flow.bulk_outlet_temperature | Flux-weighted mean temperature leaving the duct. |
| flow.energy_imbalance | What the steady solve fails to conserve, as a fraction of the power. |
| flow.fields | Density and velocity from converged populations. |
| flow.pressure | Lattice pressure from density: p = rho cs^2. |
Lattice
Lattice Boltzmann primitives.
| flow.equilibrium | The discrete Maxwellian, expanded to second order in velocity. |
| flow.macroscopic | Density and Brinkman-corrected velocity from the populations. |
| flow.stream | Shift each population one cell along its own velocity (periodic). |
| flow.step | Advance the populations one lattice time. |
| flow.step_for | The memoised one-step closure for a configuration. |
| flow.initial_populations | Populations at rest density moving uniformly at the inlet velocity. |
| flow.bounce_back_mask | Which arriving populations came from a wall node, per direction. |
| flow.duct_walls | The lateral walls of a duct whose axis is +Y. |
| flow.omega_from_viscosity | BGK relaxation rate for a kinematic viscosity in lattice units. |
| flow.viscosity_from_omega | Kinematic viscosity in lattice units for a BGK relaxation rate. |
Utilities
Compilation cache, option sets and tier availability.
Compilation cache
Persistent JAX compilation cache.
| cache.enable_compilation_cache | Point JAX’s persistent compilation cache at a stable directory. |
| cache.cache_directory | Where compiled executables are stored. |
| cache.prune_compilation_cache | Delete the oldest cache entries until the directory fits max_bytes. |
| cache.min_compile_seconds | The per-program compile-time floor for caching, honouring the override. |
Option sets
String enums for option values, and parsing helpers.
| enums.Option | Base for every option set here: a string with a fixed vocabulary. |
| enums.MeshMethod | How a SimMesh turns an SDF into elements. |
| enums.TetMesher | Which volume mesher fills a SimMesh declared tet4/tet10. |
| enums.StudyKind | The physics a declared study solves. |
| enums.BoundaryConditionType | The boundary conditions a study accepts, as the wire spells them. |
| enums.Side | An axis-extreme face of a mesh, for Nodes.side. |
| enums.ObjectiveMetric | What a study-form optimization minimizes about the solved field. |
| enums.OptimizerMethod | The optimizer an Optimization descends with. |
| enums.OptimizationArgument | The optimization keywords the viewer may retune. |
| enums.GradientPath | How a study-form optimization carries the design->points derivative. |
| enums.Precision | The floating-point width a descent runs in. |
| enums.ConstraintKind | The sketch constraints the viewer can add. |
| enums.ConstraintSolveMethod | How a sketch’s constraints are satisfied. |
| enums.ExportFormat | The file formats the viewer’s File → Export… can write. |
| enums.FemBackend | The FEM backends cadjoint registers itself. |
| enums.PluginKind | The component slots cadjoint’s own pipeline resolves by kind. |
| enums.PluginTransport | Where a plugin’s component actually runs. |
| enums.values | The option set’s members as plain strings, in declaration order. |
| enums.listed | The option set’s members joined for an error message. |
| enums.either | The option set as a prose alternative, in declaration order. |
| enums.parse | Normalise one option value, raising message when it is not a member. |
Tier availability
Availability of private-tier plugin kinds.
| tier.status | Per kind: filled by whom, at what version, and whether it is usable. |
| tier.available | Whether kind is filled and usable in this process. |
| tier.require | The plugin filling kind, or :class:TierUnavailable. |
| tier.component | The imported object filling kind, or default when it is absent. |
| tier.message | The refusal text for kind — the one wording the app and library use. |
| tier.report | Versions and tier status, JSON-ready — what a public bug report carries. |
| tier.absent | Run a block with the private kinds unregistered process-wide. |
| tier.TierUnavailable | A private-tier kind was needed and is not filled (or not compatible). |
| tier.TierStatus | Every private kind’s standing, and the one-word summary. |
| tier.KindStatus | One private kind’s standing in this process. |
Playground payload schema (internal)
Internal. JSON payloads between the compile worker and the playground frontend. Not a stable API.
| viewer.schema.CompilePayload | What mode="compile" answers with when the program ran. |
| viewer.schema.ConstructionNode | One construction object from the executed program. |
| viewer.schema.ConstructionElement | One construction call of the program, as the properties window lists it. |
| viewer.schema.ConstructionArgument | One argument a construction call was written with, and whether it can be edited. |
| viewer.schema.ConstructionFace | One analytic face of a feature — a reference, not stored geometry. |
| viewer.schema.ConstructionPlane | The frame a sketch is drawn on, plus the id that addresses it. |
| viewer.schema.ConstructionVertex | A sketch vertex, in both sketch-plane and world coordinates. |
| viewer.schema.ConstructionConstraint | One constraint attached to a sketch’s vertex parameters. |
| viewer.schema.ConstructionRelation | A constraint relating whole construction objects, not sketch points. |
| viewer.schema.ConstructionOperator | A construction-history call consuming a sketch. |
| viewer.schema.ConstructionTransform | Placement and size of a construction primitive, or a sketch’s plane. |
| viewer.schema.ConstraintSolverRun | Diagnostics captured from one source-level constraint solve. |
| viewer.schema.PlaneReference | How a sketch’s plane is written in the source. |
| viewer.schema.FaceOwner | The feature that declared a face, and the variable naming it. |
| viewer.schema.DomainEntry | The domain object a mesh or study discretizes, reported by name. |
| viewer.schema.IdentityEntry | One row of the identity table the compile payload publishes. |
| viewer.schema.MaterialDefinition | A named Python Material definition shown in the material browser. |
| viewer.schema.SimMeshPayload | One SimMesh declared in the scene program. |
| viewer.schema.MeshEdgePayload | World-space line segments of the extracted dual-contour mesh. |
| viewer.schema.StudyPayload | One study declared in the scene program. |
| viewer.schema.StudySelection | A serialized node selection, mirroring cadjoint.studies.selection. |
| viewer.schema.StudyBc | One boundary condition of a declared study, with its place in the source. |
| viewer.schema.OptimizationPayload | One Optimization(...) declared in the scene program. |
| viewer.schema.PatchAddress | The request that rewrites one argument: which op, call, keyword, and target. |
| viewer.schema.PatchRequest | Every accepted request, discriminated on op. |
| viewer.schema.PatchResponse | What /patch answers with: the patched program, or why not. |
| viewer.schema.ExportRequest | What POST /api/export takes: which object, which format, how fine. |
| viewer.schema.validate_patch_request | Parse one request against the model for its op. |
| viewer.schema.typescript_source | The whole generated module, ready to write to :data:TYPESCRIPT_PATH. |