Files
FESADev/docs/nonlinear-static-newton-raphson/physics-evaluation.md
T

12 KiB

Nonlinear Static Newton-Raphson Physics Evaluation

1. Metadata

key value
feature_id nonlinear-static-newton-raphson
source reference comparison report docs/nonlinear-static-newton-raphson/reference-comparison.md
source reference comparison SHA-256 22867B0F2E3C06C5AB908485D94160CA33CBAF1274EE099847979FA511ECC241
source reference model docs/nonlinear-static-newton-raphson/reference-model.md
source reference model SHA-256 B2E6845AB59A32F78261B7A47506C27F7BF4B61401B34BC5DE3DAD4F03D6ADDA
status pass-for-release-agent
owner_agent physics-evaluation-agent
date 2026-08-28

이 평가는 승인된 물리 acceptance scope와 이미 생성된 accepted-state evidence만 사용한다. Abaqus 또는 다른 reference solver를 실행하지 않았고, 외부 solver의 내부 정식화·적분·안정화· 결과 복구 동등성을 주장하지 않는다.

2. Input Evidence

2.1 Gate-entry audit

  • implementation-report.md와 build-test.md의 Stage 6 owner classification은 pass-for-physics-evaluation이며 full CTest 302/302, nonlinear reference 9/9 통과를 기록한다.
  • Corrected required source reference-comparison.md는 overall handoff status를 pass-for-physics-evaluation로 명시한다. Detailed verdict blocking-pass-with-review-only-findings는 모든 blocking numerical family가 통과하고 six local RF/RM findings만 review-only라는 세부 분류로 함께 유지된다. 두 status는 서로 모순되지 않으며 PHYS-STATUS-001은 해소되었다.
  • requirements.md metadata의 status: draft, approved_by: pending user re-approval 및 FESA-REQ-NSNR-069의 historical draft 표시는 내용상 physics blocker가 아니다. Authoritative coordination.md Stage 1 record는 현재 requirements SHA-256 89C1AB5F1BEDB7C5F6AD0726ED62F0982181EA8746EDE4661183FD3D18A2408E가 2026-08-27 사용자에게 명시적으로 재승인되었고 Stage 1이 passed임을 기록한다. 따라서 이 stale metadata를 승인 부재로 재해석하지 않는다.

2.2 Solver outputs and logs

case checked authoritative/generated evidence SHA-256 / observed identity
shellnl-meshfine-s4-final build-local shellNL-meshfine_results.h5 2E9817E173D73FD91C2D34864B69A1EC37483CB25951FB7CCE85895A6C87D2C6; accepted frames 10; unique factor-one frame 9/increment 10; 2 iterations per increment
shellnl-meshfine-s4-final build-local shellNL-meshfine_log.txt 1DB6FE4AAA2F1443ACC7F9B3F919CC8DD873C90392121DAB6509F1693435DA27; 20 entered-iteration records; each increment continues once and accepts on iteration 2
shellnl-s4-final build-local shellNL_results.h5 130E2E7B73B022F216A7A34C88D58114A62595ADD556A0D202B8A7FAC7391F39; accepted frames 10; unique factor-one frame 9/increment 10; 2 iterations per increment
shellnl-s4-final build-local shellNL_log.txt 3D5C4F1B20384655F9012ADE842B99E3B06B3799FC9AB16DD6FD141E18B77906; 20 entered-iteration records; each increment continues once and accepts on iteration 2
shell-s4-linear-limit build-local shell_results.h5, shell_log.txt HDF5 8AEE34D5BC80382D7E6DE85C51F0F8BCBF451CD5F5C7B8DDA6C585EB22B31763; zero-byte log E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855

HDF5는 reference-comparison.md에 적힌 build-local exact path에서 직접 읽었다. Optional FESA debug CSV view는 선언되거나 필요하지 않아 사용하지 않았다. Factor-one nodal/displacement, global/equilibrium, global/energy, direct shell stress와 accepted_frames를 확인했다.

2.3 Read-only reference evidence

Canonical reference bundle은 reference-comparison.md가 inventoried한 12개 exact file을 사용했다.

  • reference/shellNL-meshfine/: input, displacement, reaction, stress inventory
  • reference/shellNL/: input, displacement, reaction, stress inventory
  • reference/shell/: linear input, displacement, reaction inventory, stress inventory

각 SHA-256은 reference-model.md와 reference-comparison.md inventory에 일치한다. 비교량은 fine/coarse/linear U1/U2/U3 blocking, UR1/UR2/UR3 warning-only, fine/coarse local RF1/RF2/RF3와 physical spatial RM1/RM2 review-only다. RM3와 stored element-corner stress는 numerical comparison에서 제외되었다.

Reference model의 목적은 중앙 DOF 3=-100000 fixed-global dead load를 받고 둘레의 all-six DOF가 고정된 10 x 10, thickness 0.5 square plate의 coarse/fine nonlinear response와 linear-limit source identity를 검증하는 것이다. Nonlinear cases는 0.1 간격으로 factor one까지 진행한다.

3. Physics Checks

physics check result evidence and interpretation
global equilibrium pass Fine normalized force 2.09625758e-12, moment 2.74546602e-10; coarse force 8.25122661e-12, moment 1.41375091e-10. 네 값 모두 approved inclusive <=1e-8다. HDF5 /global/equilibrium은 location=global-balance-error, current arm, global origin [0,0,0], spatial moment 의미를 가진다.
reaction consistency pass Applied F3=-100000에 대해 constrained-reaction resultant F3는 fine/coarse 모두 약 +100000이고 다른 force components는 roundoff 수준이다. Applied-plus-reaction force/moment와 accepted free force/moment residual이 각각 blocking gate를 통과했다. Local RF/RM six-family discrepancy는 승인 계약상 review-only nodal redistribution evidence이며 global reaction/resultant identity를 대체하지 않는다.
displacement direction pass Downward load에 대해 node 2 final U3는 fine -2.56338e-5, coarse -2.35504e-5; reference도 각각 -2.57957054e-5, -2.37408203e-5다. HDF5 path는 factor 0.1..1.0에서 fine -2.56338e-6 .. -2.56338e-5, coarse -2.35504e-6 .. -2.35504e-5로 부호 반전·jump·rollback 없이 진행한다.
symmetry / expected zero pass Center node 2의 factor-one U1/U2와 rotations는 fine/coarse에서 약 1e-17 이하로, centered load와 symmetric all-edge constraint의 expected-zero response와 일치한다. Fresh physics-focused CTest에서 finite rigid objectivity, zero internal force, rigid translation nullspace와 no-moment tangent symmetry checks가 통과했다.
element force balance covered-by-approved-invariants 승인 HDF5에는 standalone element nodal-action balance dataset이 없고 external element-force comparison도 요구되지 않는다. 대신 complete element residual/tangent same-trial identity, patch recovery, stable assembly covariance tests와 accepted global/free equilibrium gate가 문서화된 expectation을 충족한다. 별도 element-force output을 invent하지 않았다.
stress/strain pass-sanity-evidence HDF5 direct fixed-reference Gauss stress는 finite다. Element 1/GP1의 [S11,S22,S12]는 fine bottom [-264846,-77843.6,914.879], middle [1.94695,0.530775,-0.0224511], top [264850,77844.8,-914.925]; coarse도 bottom/top sign이 반대이고 middle이 작아 centered plate bending sign/thickness pattern과 일치한다. Stored CSV는 corner/SPOS-SNEG identity로 위치가 달라 numerical stress comparison이 승인되지 않았으므로 이를 tolerance pass로 재분류하지 않는다.
rigid body mode pass 둘레 all-six-DOF support가 global rigid-body motion을 제거하고, accepted path에 비정상 large translation 또는 singular/nonfinite 증상이 없다. Fresh focused tests에서 proper triad/director, finite rigid objectivity, zero internal force, rigid nullspace와 invalid branch rejection을 확인했다.
energy/residual pass-sanity-evidence Factor-one physical strain energy는 fine 1.28169, coarse 1.17752로 finite positive이며 near-linear relation 0.5*100000*abs(U3_center)와 일치한다. 이는 secondary sanity evidence이고 승인 energy convergence gate는 아니다. Fine/coarse accepted free force/moment residual은 NSNR-069 blocking gate를 통과했고 log에는 nonfinite/failed accepted state가 없다.
model coverage pass Fine 729-node/676-element primary, coarse 49-node/36-element companion, linear control과 internal linear-limit/tangent/objectivity/patch/rollback portfolio가 승인 NSNR-030 scope를 덮는다. Stored response는 weak geometric-nonlinear regime이고 original-style MITC4의 curved/distorted membrane-locking risk는 알려진 한계지만 Numerical Review가 이번 release의 additional benchmark/convergence gate로 승인하지 않았으므로 model-coverage gap을 새로 만들지 않는다.

Fresh physics-focused verification command:

ctest --preset windows-msvc-ninja-debug -R '^(NonlinearMitc4Shell|NonlinearMitc4Recovery|NonlinearMitc4Residual|NonlinearMitc4Tangent|NonlinearMitc4Objectivity|NonlinearMitc4Patch|FiniteRotation|NonlinearStaticProcedure)\.' --output-on-failure

Result: 23/23 passed, exit 0, total real time 5.12 s.

4. Failure Classification

  • blocking classification: 없음
  • resolved finding: PHYS-STATUS-001; corrected reference-comparison.md가 required overall pass-for-physics-evaluation handoff와 detailed blocking-pass-with-review-only-findings verdict의 관계를 명시했다.
  • observed failures: equilibrium-failure, reaction-inconsistency, displacement-direction-failure, symmetry-failure, stress-location-failure, element-force-inconsistency, rigid-body-mode-suspected, nonfinite-result, model-coverage-gap, upstream-contract, environment 모두 없음.

5. Evaluation Verdict

  • verdict: pass-for-release-agent
  • physics evidence disposition: documented equilibrium, reaction, displacement, symmetry/objectivity, stress/strain sanity, rigid-body, residual/path and model-coverage checks show no physical failure.
  • pass disposition: documented physical expectations passed and no physics/model-coverage/I/O/upstream blocker remains.
  • release meaning: this verdict authorizes Release Agent evaluation through Coordinator only. It is not Release approval, publish/deploy/package/tag authorization, or external-solver equivalence.

6. Handoff Recommendation

  • handoff: Release Agent, always through Coordinator Agent
  • recommendation: Release Agent는 current approved hashes, Stage 6 pass-for-physics-evaluation, 이 문서의 pass-for-release-agent, known limitations와 review-only findings를 사용해 release readiness만 audit한다.
  • boundary: Physics Evaluation Agent는 release readiness, final release checklist, release notes, publish/deploy/package/tag를 승인하지 않는다.

7. No-Change Assertion

이 Stage 7 작업은 docs/nonlinear-static-newton-raphson/physics-evaluation.md만 생성했다. Source code, tests, CMake, Harness, requirements, research, formulation, numerical review, reference model, I/O contract, implementation reports, reference artifacts와 tolerance policy를 수정하지 않았다. Abaqus, Nastran 또는 다른 reference solver를 실행하지 않았다.

8. Open Issues

id severity issue gate effect
PHYS-META-001 nonblocking requirements.md의 draft/pending metadata가 authoritative Coordinator/user reapproval record와 stale함 현재 hash의 explicit approval로 physics authority는 해소됨; Release traceability audit에서 투명하게 유지
PHYS-LOCAL-001 nonblocking six local RF/RM families have review-only discrepancies approved disposition 유지; global force/moment balance와 free residual을 blocking evidence로 사용
PHYS-STRESS-001 nonblocking stored corner/SPOS-SNEG stress와 FESA direct Gauss recovery 위치가 다르고 fine optional stress row 하나의 node label이 malformed stress numerical comparison 제외 유지; artifact를 repair하지 않음
PHYS-LIMIT-001 known limitation stored cases are weak geometric-nonlinear plate responses; original MITC4 has known curved/distorted membrane-locking risk approved current portfolio에서는 blocker 아님; broader claim 금지