Skip to content

Physics Rigid Velocity Residual

easylogic edited this page Oct 10, 2026 · 2 revisions

Held-row contact velocity residual

Issue#1209.

Status: READY — independent offline contact residual diagnostic

Parents #1197 adopted phase proof6095511146, #1204 native cache-model NO-GO6095663431; reusable target#1179. Duplicate search found no contact velocity/Jacobian residual observer. Needed data/API is alreadyadopted1197at4f6a8ce1;1204adoption is not a code requirement for this independent measurement.

Consumer and precise question

Reusable CPU contact solver needs a defined normal-velocity residual after response. On ONLY validated1197OFFSET step15, passes0–7, pairsb2/b3 andb3/b4: does a recorded response-end row remain closing, reopen when a neighboring response changes velocity, or change only when the next pair visit refreshes point/normal/arms? Existing raw13Float64 bodyfields/manifold/cachemetadata suffice. No worldrerun ornewposition/cache policy.

1197 locates a warmstart4cachedpoints→2currentpoints angularjump. 1204whole-ID-set counterfactual stillfailsfinitefloor inall3scenes. Those facts do not establish a warmstart defect, insufficientiterations, forceaccuracy, guarded1204causality or a fixed-row solution. Measure one missing observable before choosing a new solver question.

Source/start/ownership

Exact1197nativeadoption4f6a8ce1/all33modes-blobs/retainedproducer92402add and correctedvalidator6ca34149 proof required, available. Immutableinputmanifest/data/finalPASS/firstINVALID hashes checked. Native1204NO-GO retained independently; no new API needed from it. Freeze exact newobserver/math hashes, complete input filenames/layout, selected row phases/identity/units and stoprules BEFORE actualoffline run.

Physics owns ONLY NEW examples/physics-rigid-velocity-residual/** in an isolatedcheckout. PurePython/stdlibDecimal, split kinematicmath and archiveconsumer/analysis/evidence; no package/shared/root/lock/policy/oldexample/world/force/solveredits. Integration alone modifiesdevelop. No new worldcampaign/builddependency or publicmodelGO.

Held and refreshed row contract

For each selected detectedmanifoldpoint at after-response, store originalworldpointp0, normaln0 and armsrA0=p0-cA0/rB0=p0-cB0. Use exactly recorded Float64 values, no renormalization/repair. Relative pointvelocity u=n·(vB+wB×rB-vA-wA×rA), SI m/s; bodiescentres/arms inmetres, angularrad/s, accumulatednormalimpulseNs. Tangentvelocity/speed is descriptive, since slidingcan bevalid.

KeepJ0 held across subsequent copiedphases inSAMEstep, throughafter-ownposition, neighboringwarm/response/position updates, passend andthenownnextpair-before. Compute heldJ0*v1. Separately use the oldworldpoint/normal withtranslatedcurrentcentres toidentifyarmtranslation contribution. At nextactualsamepairvisit, compute each freshlyrecordedJ1 row from its actualpoint/normal/currentcentres. Match only EXACTrecordedpointIDs; new/removed/unmatchedIDs listed, nevernearest-indexrepaired or assumedphysicalfeatureidentity.

For everymatchedrow, exactdecomposition: J1v1-J0v0 = J0*(v1-v0) + (J1-J0)*v1. Report velocityterm/geometryterm/total/identityerror and signedvalues. An after-position heldrowchange indicates velocityinvarianceviolation; translatedrow maydiffer duearms. Ownposition correction along a fixednormal canpreservethenormalrotationalrow whilechangingtangentarms; reportactualterms, don'tassertdifferentgeometryimpliesnormalerror.

Normalcomplementarity residual is |u| when recordednormalimpulse>0, otherwise max(0,-u). Keep rawsign/depth/impulse values; fixed1e-10m/s classification band isonlydescriptive, doesnotzeroorrelaxrecordedvalues. Reopening means response-endu>=-1e-10 andlaterheldu<-1e-10; retaincaseswithalreadynegative localresidual separately. Fallback normalimpulse complementarity isUNMEASURED; no inventedpoint rows. CachepointIDs areobserved labels, notcertifiedpersistentgeometricfeatures.

Verification and stopping

Use source/source-repeat/compiled-helper archives fromimmutable1197ONLY, exactly496acceptedstates/3489phaseframespergraph/raw117components/frame/LEsignbits. Originalphaseverificationcode/data/raw/order/continuity/copy/endpoints remain valid; newobserver verifiesinputhashes and actualselectedraw/phasecoverage, all3mathresultparity. NativefinalphysicalNO-GO remainsfalseGO; no newqualitydecision.

IndependentDecimal80/120 perrowcomponent/u/tangent/complementarity/decomposition agreement<=1e-25, no double-rounding substitution. Synthetickinematic/rotation/sign/static/case-matching/decompositioncontrols required. At leastone namedpoint/phase result orINCONCLUSIVE. Input/hash/layout/matching/precision error yieldsfirstINVALID/nonzero, stopsphysicalinterpretation. Retainallnewmathoutputs and firstfailure, no parameterretune. Newpuremathsyntax and actualown archivedinputflow required; oldCAD/Physicsbuild/raw/numericproof isretained, no redundantworldbuild/campaignclaimed.

Result canselect one minimum response/Jacobian/global-row model contract. It is not a publicsolver/cap/force/stabilityGO or a causecertificate for1204. Currentintegratedscreens/file/recovery remainpending674. Full1179/family660OPEN. Nativeevidence/scopedadoption/publication remain separate; no productpush/PR/deploy/packagepublish/release.

Current result: cache model fails; held-row residuals measured

#1204 native proof6095663431 is adopted at 584d742dce9f0d1a173a5960740367ea62fe1bdb. Physics verified all37current bases/final modes/blobs and ancestry. Scoped1204isclosed with physicalNO-GO retained. Actualoriginalbuild/strict-types/9casecampaign pass as executions;5,730acceptedstates/raw/privatecounters/reference/firstfailure parity agrees across source/repeat/compiledhelpers. ALIGNED leaves finitefloor at799/6.658333333s, OFFSET504/4.2s, YAW604/5.033333333s. All observed pairdepths remain<=2mm, but fullstabilityfails before8s. No settling/refinement/cost/Chrome/Viewer or retune. Currentintegratedchecks remain merged; integration validation pending under674.

#1209 independent residual proof6095951061 isnativecomplete: exact4f6a8ce1 -> 9e7384de,2commits/10NEWownedpaths. Measured36723a7b; purePythonarchiveconsumer0/51analyticcontrolsPASS. Existing1197data/raw/phase input isrevalidated; no worldrerun/productbuild. All3archivegraphresults agreeatDecimal80/120<=1e-25. Step15,two selectedpairs/8passes give16visits,52localrows and44matchedfreshrows.2,938closing-held-frameobservations are repeatedrowstates, notuniquereopeningevents.

For b2/b3pointb2:1:1:0, response-endu=+9.255459713e-6m/s. Holdthatrow: neighborb3/b4warmstart makesu=-.3645946871; neighborresponse endsu=-.05222741137. Correspondingtranslated-arm terms are~1e-19, so velocitychange is observedbeforefreshrowgeometry. Localcomplementaritymaximum1.356918815e-5m/s means no exactlocalsolve/forcecertificate. Separately b3/b4point1pass5→6 hasvelocityTerm=-.09192187761 andgeometryTerm=+.07518889276m/s, total=-.01673298485, identityerror4e-121. Bothtermsare measurable underrecorded-IDcorrespondence; equalIDdoesnotcertify aphysicalfeature. Original1197only, no guarded1204causaltransfer. FullphysicalmodelGO remainsfalse.1209exactadoption/scopedclosurepending; laterintegratedchecks stay674.

Next existing#1219 fixedglobalcontactisland, detailedplan, isready. SourceAPI alreadyadopted1204at584d; validated1209nativeproof requiresno runtimeAPI. Ownedisolatedbranchcodex/physics-rigid-global-contact-reference-1219 startsat584d. Source/class drafting proceeds now; exacthash/error/stat freeze remainsbeforetrackedimplementation/trials. No integratedUIorPlannerreply wait. Proposed64fixedglobalpoint sweeps withgeometry heldduringvelocitysolve, followedby8originalposition-onlysweeps+unchanged32projection; originalcallers/materials/fullgates retained. This is UNMEASURED. No publicsolver/cap/API or newforce/engineGO. Full1179/family660OPEN. Plannerreceivedonly1219number/title.

Exact residual diagnostic adoption

1209isnowactuallyadoptedat e2ebf96631d158c961358c49884887b78cc34e6b, secondnative9e7384de. Physicsindependentlyverifiedall10currentbase/final modes/blobs andcurrentancestry. Scoped1209CLOSED; native6095951061/rawinput/51mathcontrols/52localrows/44matchedfreshrows and original1191/1204NO-GOremain. Merged; integration validation pending under674; no newworld/solver/physicalGO.1219source/classpreparationalreadyproceeds, exactsource/error/counterfreezebeforetrackedimplementation/run. Face-manifoldrefusalappliesonlytovelocityassembly; the8+32positionphases useoriginaldetect/correctanddo notbuildimpulserows. Nointegratedscreen/file/Plannerreplywait.

Clone this wiki locally