What WebCAE does today
The full list of what is implemented, from geometry import to reading the result. Each section also states where the capability ends: a promise without its boundary is the kind you apologise for later.
CAD and geometry preparation
STEP import plus modelling tools of our own, so an analysis model can be brought into shape without going back to your CAD system.
STEP import
AP203, AP214 and AP242, including multi-body assemblies. On heavy files the model appears as it is processed rather than after the whole load completes.
Building geometry
Primitives, sketches, datum planes and coordinate systems. A surface is built from a closed loop of lines, a solid from a closed set of faces, with watertightness checked as you select.
Extrusion
A face of a solid, a standalone surface into a body, a line into a surface. The distance is typed or dragged with a gizmo directly in the 3D view.
Transforms and patterns
Booleans, splitting and merging bodies, move, rotate, mirror, linear and circular patterns.
Twelve repair and simplification operations
Repair, defeature, fillet and chamfer, offset, move face, draft, remove face, shell, unstitch, simplify and shrinkwrap — grouped into four sets, each with a note on what it actually does.
Removing fillets by radius
An at-most or at-least condition applied across the whole model in one action, instead of picking hundreds of small blends by hand.
Measurement
Distances between points, lines and surfaces drawn on the model; per body — volume, area, centre of mass and minimum wall thickness.
Model tree
Visibility, suppression, isolation, colour, folders, renaming and right-click operations, including quick mesh, material and boundary-condition commands.
- — Sketches do not have parametric constraints yet — horizontality, tangency and dimensional relations are on the roadmap along with a feature history.
- — Revolve, sweep and loft exist in the geometry kernel and the scripting language but are not yet exposed as ordinary interface commands.
- — Assemblies with components and instances, mates and a bill of materials are planned; today the groups in the tree are folders.
Tetrahedral meshing
Automatic meshing of imported geometry, with size control at body, face and edge level — and an honest quality verdict rather than just the fact that something was built.
First- and second-order elements
Four- and ten-node tetrahedra. The order is chosen explicitly and is never silently downgraded: ask for second order and you get it.
Second order only where it is needed
The part is meshed at first order while elements inside a chosen zone stay ten-node. The junction between the two orders is tied by constraints on the shared edges, so the displacement field stays consistent.
Size control
Density presets derived from the part size, an explicit global size, growth rate and curvature accuracy. Local refinement is set by a sphere of influence, and a size can be assigned to a specific face or edge.
Refinement driven by results
Stress hotspots from the previous run become refinement zones for the next — with a mesh budget, so refining does not turn into an overnight solve.
Geometry healing before meshing
Small holes, blends, narrow faces and near-coincident vertices are found automatically, with thresholds derived from element size and part dimensions. The original body is not modified, a report is shown, and healing can be switched off.
Boundary conditions protected during healing
An operation that would destroy a face carrying a load or a support is rolled back, and orphaned entries are listed by name. A silently lost boundary condition looks like a successful analysis of a different problem — the worst class of error there is.
Quality assessed, not assumed
Minimum and average element quality and the number of degenerate elements are computed. A mesh gets one of three verdicts: accepted, accepted with a warning about slivers, or rejected.
A standing corpus of checks
Seventeen reference cases run on every build, comparing element counts, region coverage and quality. Four independent runs of the native mesher matched on all 134 control values.
- — Quality figures are platform-dependent: the same part can report different minimum quality from the native and the browser mesher. We treat the native path as the reference.
- — Sliver removal is off by default: on a real assembly it removed up to two thirds of the faces while changing the volume by only 0.16%. Such faces are detected and reported, but not deleted without your decision.
- — Edge sizing is implemented as a chain of spheres along the polyline — the mesher has no direct edge size control.
Hexahedral meshing
Structured hexahedra where the gradient is, tetrahedra everywhere else. The zone is created by subtracting a tool from the CAD solid before meshing rather than by displacing nodes of a finished mesh — so elements do not invert.
Five generators for shapes that actually occur
A box; an annular zone around a hole with radial grading following the 1/r² decay; an O-grid cylinder for bosses and pins; a ribbon along a three-dimensional fillet; and a toroidal zone for a cylinder meeting a plane, closing a full 360° without duplicated nodes.
First and second order
For twenty-node hexahedra the midside nodes are projected analytically onto the true curved boundary — the cylindrical arc, the fillet radius, the toroidal surface — rather than left at the midpoint of a chord.
Joined to the tetrahedral mesh
No shared nodes are required: zones are tied with multipoint constraints and the system is reduced before solving. The same machinery carries part-to-part connections in an assembly.
Quality control
Every element is checked for a strictly positive Jacobian, and zone volumes converge to the analytical value.
Finding the concentrators
A scanner locates cylindrical holes, fillets and spherical pockets and proposes zones for them, from the ribbon or from a script. You choose the radius and the number of layers.
- — Zones must not overlap each other or extend past the part boundary.
- — For the toroidal zone, passing its interface faces to the constraint solver is not finished, and its cutting tool has a rectangular section rather than a swept fillet profile.
- — We do not yet have a measured hexahedra-versus-tetrahedra comparison on the same part: the case rests on theory and on mesh quality. We will publish the stress-concentration comparison when it exists.
Linear analysis
Statics, natural frequencies, buckling, heat conduction and thermal stress — on solid, shell and beam elements, with every analysis type checked against an analytical solution.
Linear statics
Displacements, strains, stresses and support reactions. Several materials in one model, any number of supports and loads at once.
Natural frequencies and mode shapes
Modal analysis with free or constrained boundaries and animated mode shapes, on a sparse basis — so it works on models with hundreds of thousands of degrees of freedom.
Prestressed modal analysis
Frequencies of a loaded structure computed from the real problem with a geometric stiffness matrix. We measured the approximate formula and rejected it: on a cantilever it is off by up to 4% near the critical load.
Buckling
Linear eigenvalue problem, critical load factor and buckling mode. The geometric stiffness matrix is built for beams, solids and shells.
Heat conduction
Steady-state temperature field and heat flux, with surface convection.
Thermal stress
Stresses from thermal expansion, driven by an imposed or computed temperature field.
Element library
First- and second-order tetrahedra and hexahedra, wedges and pyramids, a four-node MITC4 shell free of locking, a triangular shell, a beam and a point mass.
Verification is published
Eighteen reference problems with analytical solutions: the patch test, Timoshenko and Euler-Bernoulli beams, multi-material models, thermal problems, thermal stress, modal analysis, buckling and shells. Every number in the log cites a specific test.
- — Materials are linear elastic: no plasticity, creep or viscoelasticity.
- — Analyses are steady-state or eigenvalue problems — there is no transient dynamics and no harmonic response.
- — Shell and beam elements are verified in statics; their modal and buckling behaviour is not yet closed in the verification log.
Bonded connections
Parts held together in an assembly: the joint neither opens nor slides. Implemented with exact constraint equations rather than a penalty, so the joint adds no spurious compliance and the constraint error is exactly zero.
Exact bonding of non-matching meshes
A slave node's displacement is expressed as a weighted sum of the master face nodes, and the system is reduced before solving. The meshes on either side need not match.
Mixed element types
Tetrahedra bond to hexahedra, first order to second.
Automatic pair detection
Touching faces, gaps and interferences are found from the geometry with a distance threshold — no need to enumerate hundreds of joints by hand.
Compliant bonding
When the joint should have a defined stiffness rather than being perfectly rigid, it is set through a penalty stiffness.
Frictionless contact
A one-sided interface: it carries compression and no tension, and the region in contact grows and shrinks as the load is applied. Solved in load increments, with the contact pairs rebuilt on the deformed shape.
Coupled by overlapping area
The two sides are coupled through an integral over the overlapping area of their faces rather than node by node: the pressure comes out smooth, and a uniform load passes through the joint unchanged.
Pairs rebuilt at every step
After each converged increment the pairs are rebuilt on the deformed geometry — zones genuinely close and open, and relative sliding along the interface behaves sensibly.
Adaptive step size
The increment grows when equilibrium comes easily and is halved when a step fails to converge.
Step history and animation
Each step stores displacements, contact status, nodal contact forces and pressure. The results tab offers a slider across steps, playback and speed control.
Contact status on the model
Open, active, sliding, stuck — an ordinary 0–3 field showing which part of a joint carries load at a given step and which part has lifted away.
Contact pressure
Computed from nodal contact forces divided by the tributary area of each node, and drawn per face without smearing onto neighbours.
Displacement loading
A prescribed displacement ramps through the same increments as a force.
- — Desktop only: the browser build does not solve frictionless contact.
- — There is no friction. A pair set to Coulomb friction is refused with a clear message rather than quietly solved as frictionless.
- — The convergence verdict is based on residual penetration rather than a fully converged equilibrium residual.
- — Interference fits, non-conforming meshes across a joint and self-contact within one body are not supported yet.
RBE2 links, remote loads and moments
A rigid link behaves as a real RBE2: the slave displacement equals the master displacement plus rotation times the lever arm. So the link transfers a moment, not just a force — and remote loads run on the same mechanism.
RBE2 rigid link
One master node and many slaves on a face, edge, vertex or body. Implemented by exact reduction of the system, not by a penalty.
Arbitrary constraint equations
A linear combination of degrees of freedom with a right-hand side, for when displacements must be tied in a non-standard way.
Remote force and moment
A point in space, a force vector in newtons and a moment vector in newton-metres. A virtual node appears at that point, linked to the selected geometry — this is how you represent a bracket or a mass that is not in the model.
Remote displacement and rotation
Any subset of the six degrees of freedom is prescribed; the rest stay free.
Conflict diagnostics
A node already fixed is excluded from the slaves; cycles and double-slaving of a node are detected and explained instead of producing quietly wrong kinematics.
- — A moment cannot be applied to a single point: a solid element node has no rotational stiffness. A line, surface or body is required, otherwise the entry is refused with a hint.
- — A pinned link and per-axis couplings currently reduce to a full six-degree-of-freedom rigid link.
- — There is no distributing RBE3-type link.
- — Remote loads and displacements work in linear static analysis.
- — Rotation as a boundary condition is not supported on solid elements — they have no rotational degrees of freedom, and the interface marks this honestly.
Pre- and post-processing
Setting up the problem and reading the result in one window: the model tree, boundary-condition panels that preview on the geometry, and result fields with a legend in units you can trust.
Materials
A library and custom materials: elastic properties, density, thermal expansion, conductivity and strength limits.
A full set of boundary conditions
Fixity per axis, prescribed displacement, roller and symmetry plane by normal, concentrated and distributed force, pressure, edge load, acceleration and gravity, remote forces and moments.
Preview before Apply
Arrows appear while you are still filling in the form: at the geometric centre of the object, pointing outward, oriented by the chosen coordinate system.
Coordinate systems from geometry
Built by picking a surface, line or vertex, with rotation about the local axes. Loads and results can be set and read in them, cylindrical included.
Result fields
Displacement magnitude and components, six components of stress and strain, principal and equivalent stresses, support reactions, contact pressure and status, and the rotation of the continuum.
Nine failure criteria
Von Mises, Tresca, Rankine, Mohr-Coulomb, Saint-Venant, Drucker-Prager and three fatigue lines — Goodman, Soderberg, Gerber. Safety factor and utilization maps; changing the criterion needs no re-solve.
Tools for reading the result
Section cuts, point probes, deformed shape with scaling, iso-surfaces, animation of mode shapes and load steps, and comparison across steps.
Scripts and AI agents
Any setup is reproducible from a script, and through the MCP interface a model can be prepared and interpreted from an AI agent.
- — The strength map is not yet available for multi-material assemblies — the interface says so instead of applying one allowable to every part.
Solvers and performance
A cascade of solvers rather than one method, a direct factorization on Apple Silicon hardware acceleration, and explicit rules about when a method must not be used.
Direct sparse factorization
An exact answer with no convergence monitor to watch — what you want on assemblies with constraints, where iterative methods stall. On macOS it runs through Apple Accelerate across the performance cores and matrix units.
Iterative path
Preconditioned conjugate gradients and algebraic multigrid, for large meshes without constraint equations.
Rules for choosing a method
On assemblies with exact constraints multigrid is not called at all: it diverges there. The rule is locked by a test that fails the build if it is removed.
Stopping a diverging run
If the residual exceeds twice its starting value after fifteen cycles, the solver stops instead of burning minutes on a hopeless path.
Parallel work
Stiffness assembly is parallelized, assembly meshing runs several processes at once, and the process count is derived from the machine's actual capabilities.
Monitoring the run
A residual chart for the iterative path and a Newton-iterations-per-load-step chart for the nonlinear one, marked where the step was halved.
- — The 14–26× speed-up is measured on Apple Silicon against the previous direct solver. On other platforms the direct path ceiling is 120,000 degrees of freedom.
- — Beyond a million degrees of freedom on assemblies with exact constraints there is no good route yet: the iterative prototypes we tested did not converge on such a system.
- — Within a single body the mesher gains only 1.1–1.2× from threads — the win comes from meshing different bodies in parallel, not from threading one.
Browser and desktop
One interface and one solver core. The difference is that a browser tab is a single thread with a memory ceiling, while the desktop gets the whole machine: several meshing processes, parallel assembly and a direct solver on hardware acceleration.
The browser runs the full cycle with no install
STEP import, meshing, linear analysis, bonded connections and post-processing. Nothing to install and nothing to clear with your IT department.
The desktop does what a tab cannot
Frictionless contact, the native mesher in separate processes, the direct solver on Apple Accelerate, large assemblies, and topology optimization in reasonable time.
The desktop works offline
The licence is validated locally from a signed file with no network call needed to start — which matters where an engineering workstation has no general internet access.
The boundary is stated out loud
When a problem exceeds what a tab can do, the product says so and points at the desktop instead of computing at half strength and returning something plausible.
- — Assemblies with constraints move to the desktop early: with constraint equations present and more than 5,000 translational degrees of freedom, the browser's iterative path does not converge in reasonable time, and the product says so before starting.
- — Frictionless contact, native STEP import and the hexahedral generators built on external modules are desktop only.
- — Topology optimization does run in the browser, but matrix assembly there is 20–50 times slower than native.
- — On the same geometry the browser and the native build can produce slightly different meshes, and individual bodies may mesh on one platform and fail on the other. We treat the native path as the reference and say so plainly.
Try it on your own model
Open your STEP in the browser right now, or send an assembly through the pilot programme — we prepare the model, run the analyses and send back a report.