Files
FESADev/docs/nonlinear-static-newton-raphson/reference-model.md
T
KOKO\Mimi 9ce28571f8 chore: merge nonlinear static Newton-Raphson feature
# Conflicts:
#	docs/nonlinear-static-newton-raphson/coordination.md
#	docs/nonlinear-static-newton-raphson/formulation.md
#	docs/nonlinear-static-newton-raphson/implementation-plan.md
#	docs/nonlinear-static-newton-raphson/io.md
#	docs/nonlinear-static-newton-raphson/numerical-review.md
#	docs/nonlinear-static-newton-raphson/reference-model.md
#	phases/index.json
#	phases/nonlinear-static-newton-raphson/index.json
#	phases/nonlinear-static-newton-raphson/step0.md
#	phases/nonlinear-static-newton-raphson/step1.md
#	phases/nonlinear-static-newton-raphson/step10.md
#	phases/nonlinear-static-newton-raphson/step11.md
#	phases/nonlinear-static-newton-raphson/step12.md
#	phases/nonlinear-static-newton-raphson/step2.md
#	phases/nonlinear-static-newton-raphson/step3.md
#	phases/nonlinear-static-newton-raphson/step4.md
#	phases/nonlinear-static-newton-raphson/step5.md
#	phases/nonlinear-static-newton-raphson/step6.md
#	phases/nonlinear-static-newton-raphson/step7.md
#	phases/nonlinear-static-newton-raphson/step8.md
#	phases/nonlinear-static-newton-raphson/step9.md
2026-08-30 00:03:17 +09:00

25 KiB

Nonlinear Static Newton-Raphson Reference Model

1. Metadata

  • feature_id: nonlinear-static-newton-raphson
  • source_requirements: docs/nonlinear-static-newton-raphson/requirements.md
  • source_requirements_sha256: 89C1AB5F1BEDB7C5F6AD0726ED62F0982181EA8746EDE4661183FD3D18A2408E
  • source_research: docs/nonlinear-static-newton-raphson/research.md
  • source_formulation: docs/nonlinear-static-newton-raphson/formulation.md
  • source_numerical_review: docs/nonlinear-static-newton-raphson/numerical-review.md
  • decision_source: USER-DECISION-004 option 1
  • balance_gate_decision: user-approved factor-one global force/moment normalized gate <=1e-8
  • status: pass-for-io-definition
  • owner_agent: numerical-review-agent
  • date: 2026-08-28
  • post_closure_addendum_date: 2026-08-29
  • post_closure_additive_case: shellnl-meshfine-02-s4-final
  • artifact_policy: read-only-existing-files
  • external_tolerance_policy: docs/TOLERANCE.md

이 문서는 logical quantity, source identity, component matching, row precheck와 blocking/warning-only/review-only 분류를 정의한다. 최종 HDF5 dataset projection은 I/O Definition Agent 소유이며 이 문서에는 dataset path를 정의하지 않는다.

2. Reference Acceptance Scope

승인 closure 계약의 세 stored case를 유지하고 merge 후 별도 검증할 한 case를 추가한다.

  • shellnl-meshfine-s4-final: 사용자가 추가하고 검증을 요청한 729-node/676-element mesh-refined nonlinear primary case. External U1/U2/U3와 factor-one internal equilibrium은 blocking이다.
  • shellnl-s4-final: 49-node/36-element coarse nonlinear companion regression. Fine case와 별도 reference에 대해 external U1/U2/U3와 factor-one internal equilibrium을 blocking으로 검증한다.
  • shell-s4-linear-limit: 같은 coarse topology의 NLGEOM=NO linear-limit/source-identity regression. Nonlinear response evidence로 부르지 않는다.
  • shellnl-meshfine-02-s4-final: 729-node/676-element post-closure nonlinear additive case. 과거 canonical Stage 6 reference-comparison.md에는 포함되지 않았으며 merge된 current code로 별도 verification한다. 이 pending comparison은 기존 세 case의 승인 gate 또는 Release verdict를 소급 변경하지 않는다.

모든 selected case에서 displacement U1/U2/U3는 blocking, UR1/UR2/UR3는 warning-only다. Coarse/fine/post-closure local nodal RF1/RF2/RF3와 physical spatial RM1/RM2는 common external policy로 exact error/precheck evidence를 만들되 review-only이고 전체 blocking verdict를 바꾸지 않는다. Local RM3와 stress는 numerical comparison에서 제외한다.

Coarse와 fine은 각자의 input/CSV에 독립적으로 비교한다. 두 mesh 사이 node interpolation, row pairing, averaging, collapse, observed convergence order 또는 direct coarse/fine equality gate를 만들지 않는다. Fine case 추가는 Abaqus S4와 FESA MITC4의 element formulation, integration, stabilization 또는 internal behavior equivalence를 의미하지 않는다. shellnl-meshfine-02-s4-final도 자기 input/CSV에만 독립적으로 비교하고 기존 fine case와 cross-case equality 또는 mesh-convergence gate를 만들지 않는다.

3. Reference Case Inventory

3.1 Exact input and CSV paths

case id purpose exact path required disposition observed status
shell-s4-linear-limit linear input reference/shell/shell.inp required readable; S4, 49 nodes, 36 elements, NLGEOM=NO
shell-s4-linear-limit displacement reference reference/shell/shell displacements.csv required blocking/warning 49 unique finite rows; single final static state
shell-s4-linear-limit reaction inventory reference/shell/shell reactions.csv inspection-only 49 unique finite rows
shell-s4-linear-limit stress ordering inventory reference/shell/shell stresses.csv optional inspection 288 rows; element labels 1..36 in contiguous ascending blocks
shellnl-s4-final coarse nonlinear input reference/shellNL/shellNL.inp required readable; S4, 49 nodes, 36 elements, NLGEOM=YES
shellnl-s4-final displacement reference reference/shellNL/shellNL displacements.csv required blocking/warning 49 unique finite rows; exact factor-one Frame
shellnl-s4-final local reaction reference reference/shellNL/shellNL reactions.csv required review-only 49 unique finite inventory rows; exact factor-one Frame
shellnl-s4-final stress inventory reference/shellNL/shellNL stresses.csv optional inspection 288 rows; element labels 1..36 in contiguous ascending blocks
shellnl-meshfine-s4-final fine nonlinear input reference/shellNL-meshfine/shellNL-meshfine.inp required readable; S4, 729 nodes, 676 elements, NLGEOM=YES
shellnl-meshfine-s4-final displacement reference reference/shellNL-meshfine/shellNL-meshfine displacements.csv required blocking/warning 729 unique finite rows; exact factor-one Frame
shellnl-meshfine-s4-final local reaction reference reference/shellNL-meshfine/shellNL-meshfine reactions.csv required review-only 729 unique finite inventory rows; exact factor-one Frame
shellnl-meshfine-s4-final stress inventory reference/shellNL-meshfine/shellNL-meshfine stresses.csv optional inspection 5,408 rows in ascending element blocks; one malformed optional node label ss
shellnl-meshfine-02-s4-final post-closure nonlinear input reference/shellNL-meshfine_02/shellNL-meshfine_02.inp required for separate verification readable; S4, 729 nodes, 676 elements, NLGEOM=YES
shellnl-meshfine-02-s4-final displacement reference reference/shellNL-meshfine_02/shellNL-meshfine_02 displacements.csv required blocking/warning 729 unique finite rows; exact factor-one Frame
shellnl-meshfine-02-s4-final local reaction reference reference/shellNL-meshfine_02/shellNL-meshfine_02 reactions.csv required review-only 729 unique finite inventory rows; exact factor-one Frame
shellnl-meshfine-02-s4-final stress inventory reference/shellNL-meshfine_02/shellNL-meshfine_02 stresses.csv optional inspection 5,408 unique finite inventory rows; excluded from numerical comparison

reference/shell/shell stresses.csv는 사용자 변경 후 element label 1..36 순서로 저장되어 있음을 확인했다. Row order는 matching identity가 아니며 deterministic inspection display에만 사용한다. Fine stress의 Element Label=1, SNEG, Node Label=ss 한 행은 optional excluded artifact issue다. 이 파일을 rename, repair, normalize 또는 rewrite하지 않는다.

Coarse와 fine nonlinear input은 homogeneous isotropic material E=2.1e11, nu=0.3, shell thickness 0.5, center node-set load DOF 3 = -100000, all-six-DOF perimeter support, *STATIC 0.1,1.,0.001,0.1을 사용한다. Fine case는 같은 physical setup의 refined topology다.

Post-closure _02 input은 같은 fine topology, material, section, Set-2 104-node all-six-DOF support와 *STATIC을 사용하지만 source load는 F1=+1e8, F2=+1e8, F3=-1e8이다. 따라서 기존 fine case의 F3=-1e5와 동일 case로 취급하지 않는다.

3.2 Read-only artifact hashes

exact path SHA-256
reference/shell/shell.inp 4005851E1AB22FD3A16AC17A8D5DA3E051233F69F37419079F3553AD134ECFCF
reference/shell/shell displacements.csv C81D94E0B4A849F87AA0F79C83A79B94D5661AC79E44ED826919AB432C87746B
reference/shell/shell reactions.csv 0E34EEC27E700C3C0C744C1DAFD8A3B95EFEF34B8616FE96665876586FE82D41
reference/shell/shell stresses.csv 2B75A5B0DEB045A283C9BB7E9B1153B79F7537FF487214BF4A23316B59B660A7
reference/shellNL/shellNL.inp 4BF3ECB0F7F1E8462C573E993DBC97AC5D920C91CF6F23AD4C6891D77FFBADA2
reference/shellNL/shellNL displacements.csv 4E0F99CA9372B1ADF7FAF102F43BC0B887DC743FDEDA378E4342D2CF8E0C0786
reference/shellNL/shellNL reactions.csv 001CB1541A9E94424E5E650509D46BC8724970DF4DE47184D9DB09C7938AB069
reference/shellNL/shellNL stresses.csv 5500E5114B1C44887528E30CEC054A1EB0F68BE3F4B8CE81FA59FC74A881483F
reference/shellNL-meshfine/shellNL-meshfine.inp 40DF1CE77311C8D799564A21A60F3BDEBB8148D52CAE22B7292FDFAD32018220
reference/shellNL-meshfine/shellNL-meshfine displacements.csv 740819FF8AED0E279961581F7CDBFA12784CFBA3A488C35A652E80103F64433F
reference/shellNL-meshfine/shellNL-meshfine reactions.csv AEB01C98C596792B0E5F2B86A81945CAB0BEB0C6969CFC6738C6F81DF1F94363
reference/shellNL-meshfine/shellNL-meshfine stresses.csv 6D6213AB5DB9D6B1F5FBD641367D08BACC805967B6C5A95BCE0E1A5395377782
reference/shellNL-meshfine_02/shellNL-meshfine_02.inp DAEC7592489837B165D55382CAEAF53E21D84D804AA38C73CBF35E5CC0BAC3E5
reference/shellNL-meshfine_02/shellNL-meshfine_02 displacements.csv 18EC051D265E0BD2C441FE73C08E097B83EE85BC2EB32FFBE3AF0DCB9CB89672
reference/shellNL-meshfine_02/shellNL-meshfine_02 reactions.csv 59348996E0CE80687C9EB2747EEABF84ACED4CE97F8A56F0FFDDBDCA404A57A3
reference/shellNL-meshfine_02/shellNL-meshfine_02 stresses.csv 933A72025A0E897FD65F81C913E53D1730BD551CE95CBDEA96F9F99B10BE8B18

Post-closure artifact byte counts는 input 56,554, displacement 110,555, reaction 109,000, stress 1,036,916이다. Hash와 byte count는 read-only audit evidence이며 artifact를 rewrite하거나 canonical Stage 6 evidence로 소급 재분류하지 않는다.

4. Source Identity and Component Contract

4.1 Case and accepted-state identity

  • Instance identity는 case-insensitive semantic match다. Artifact spelling Part-1-1과 PART-1-1은 같은 instance이지만 file text를 rewrite하지 않는다.
  • 세 nonlinear case required rows의 exact CSV Frame은 Increment 10: Step Time = 1.000이며 accepted factor-one state에 대응한다.
  • Linear case에는 Frame column이 없고 single final static state로 해석한다.
  • Row order는 identity가 아니다. Stable key match 후 deterministic reporting order로만 정렬한다.

4.2 Nodal displacement and rotation

CSV U-U1/U-U2/U-U3는 logical U1/U2/U3, UR-UR1/UR-UR2/UR-UR3는 logical UR1/UR2/UR3에 대응한다. Key는

(case_id, accepted_state, canonical_instance_name, source_node_label, component)

이다. Coarse/linear은 labels 1..49, fine과 post-closure _02는 1..729를 각각 정확히 한 번 요구한다. U는 global length/blocking, UR은 fixed-initial global rotation-vector/warning-only다.

4.3 Local reaction review contract

Reaction source rows는 input Set-2 constraint mask로 선택한다.

  • coarse: 1, 3..9, 14..17, 22..33 — 24 nodes, all six DOFs constrained.
  • fine: 1, 3..9, 34..57, 82..153 — 104 nodes, all six DOFs constrained.
  • post-closure _02: fine과 같은 exact Set-2 inventory — 104 nodes, all six DOFs constrained.

다른 CSV node rows는 file/schema/finite inventory지만 local reaction numerical rows가 아니다. Free FESA entries는 reaction이 아니라 accepted free residual evidence다.

CSV components logical quantity matching FESA meaning disposition
RF-RF1, RF-RF2 in-plane local reaction force constrained translational full residual, global force review-only
RF-RF3 transverse local reaction force constrained translational full residual, global force review-only
RM-RM1, RM-RM2 tangent-plane physical reaction moment constrained generalized residual converted by J_l(phi)^(-T), global spatial force-length review-only
RM-RM3 director/drilling-axis row no approved physical external equivalence target excluded

Raw generalized rotational residual을 CSV RM에 직접 match하지 않는다. Review-only는 row omission을 허용한다는 뜻이 아니다. Exact row precheck와 common-policy error/RMS를 모두 보고하되 그 결과가 blocking verdict를 변경하지 않는다는 뜻이다.

4.4 Distinct factor-one equilibrium quantities

각 nonlinear case에서 같은 accepted factor-one state를 사용한다.

logical quantity source identity / projection components disposition
accepted free residual input mask로 결정한 stable free (instance,node,global DOF component) rows; force와 moment channel 분리 free UX/UY/UZ; free URX/URY/URZ generalized covectors blocking-internal
constrained reaction resultant constrained source rows만 current arm과 spatial physical moment로 합산 force [1,2,3]; moment [1,2,3] review-only-summary
applied-plus-reaction balance error all resolved applied sources plus constrained reactions; global origin [0,0,0]; x=X+u; physical spatial nodal moments force [1,2,3]; moment [1,2,3] blocking-internal

Constrained reaction resultant force is sum(F_react). Its moment is sum(x cross F_react + M_react). Balance error adds the corresponding applied force and x cross F_appl + M_appl. Accepted free residual is neither sum. 세 quantity는 exact source/state identity를 공유하지만 interchangeable하지 않다.

현재 stored case의 constrained prescribed u=phi=0 때문에 support current arm과 initial arm, generalized moment와 spatial moment가 수치적으로 일치한다. 이는 supported general nonzero prescribed translation/rotation에서 initial arm/raw rotational residual을 재사용할 근거가 아니다.

4.5 Stress inventory and exclusion

Stress inspection key는

(case_id, accepted_state, instance, element label,
 element-corner node label, SPOS/SNEG section surface, component)

이다. Stored stress는 element-corner SPOS/SNEG rows이고 FESA 승인 recovery는 midsurface Gauss locations의 direct bottom/middle/top [S11,S22,S12]다. Nodal extrapolation/averaging을 만들지 않으며 S-S11/S-S22/S-S12/S-S33 어느 것도 external family에 포함하지 않는다.

4.6 External comparison families

family id components / source rows rows units / coordinates disposition
linear.translation U1/U2/U3; nodes 1..49 147 length / global blocking
linear.rotation UR1/UR2/UR3; nodes 1..49 147 dimensionless / fixed-initial global warning-only
coarse.translation U1/U2/U3; nodes 1..49 147 length / global blocking
coarse.rotation UR1/UR2/UR3; nodes 1..49 147 dimensionless / fixed-initial global warning-only
coarse.local_reaction_inplane_force RF1/RF2; 24 constrained nodes 48 force / global shell plane review-only
coarse.local_reaction_transverse_force RF3; 24 constrained nodes 24 force / global transverse review-only
coarse.local_reaction_physical_moment RM1/RM2; 24 constrained nodes 48 force-length / global spatial review-only
fine.translation U1/U2/U3; nodes 1..729 2,187 length / global blocking
fine.rotation UR1/UR2/UR3; nodes 1..729 2,187 dimensionless / fixed-initial global warning-only
fine.local_reaction_inplane_force RF1/RF2; 104 constrained nodes 208 force / global shell plane review-only
fine.local_reaction_transverse_force RF3; 104 constrained nodes 104 force / global transverse review-only
fine.local_reaction_physical_moment RM1/RM2; 104 constrained nodes 208 force-length / global spatial review-only
meshfine02.translation U1/U2/U3; nodes 1..729 2,187 length / global blocking
meshfine02.rotation UR1/UR2/UR3; nodes 1..729 2,187 dimensionless / fixed-initial global warning-only
meshfine02.local_reaction_inplane_force RF1/RF2; 104 constrained nodes 208 force / global shell plane review-only
meshfine02.local_reaction_transverse_force RF3; 104 constrained nodes 104 force / global transverse review-only
meshfine02.local_reaction_physical_moment RM1/RM2; 104 constrained nodes 208 force-length / global spatial review-only

4.7 Internal blocking verification families

family id exact rows/components gate
coarse.accepted_free_force_residual 75 free translation DOFs NSNR-069 force channel, factor one
coarse.accepted_free_moment_residual 75 free rotation DOFs NSNR-069 moment channel, factor one
coarse.global_force_balance 3 global balance-error components normalized <=1e-8
coarse.global_moment_balance 3 global balance-error components normalized <=1e-8
fine.accepted_free_force_residual 1,875 free translation DOFs NSNR-069 force channel, factor one
fine.accepted_free_moment_residual 1,875 free rotation DOFs NSNR-069 moment channel, factor one
fine.global_force_balance 3 global balance-error components normalized <=1e-8
fine.global_moment_balance 3 global balance-error components normalized <=1e-8
meshfine02.accepted_free_force_residual 1,875 free translation DOFs NSNR-069 force channel, factor one
meshfine02.accepted_free_moment_residual 1,875 free rotation DOFs NSNR-069 moment channel, factor one
meshfine02.global_force_balance 3 global balance-error components normalized <=1e-8
meshfine02.global_moment_balance 3 global balance-error components normalized <=1e-8

이 internal families에는 Abaqus CSV value 또는 docs/TOLERANCE.md를 적용하지 않는다. Approved analytical/invariant gates이며 exact definitions는 numerical-review.md §6.2다.

5. Row Prechecks

Tolerance 또는 internal metric 전에 다음을 검사한다.

  1. 각 case의 exact declared input과 해당 disposition에 필요한 CSV가 존재하고 readable하다.
  2. Header는 surrounding whitespace만 trim하고 required names/components가 모두 있어야 한다.
  3. Nonlinear required rows의 Frame은 exact factor-one identity여야 한다.
  4. Wide CSV는 Section 4 contract로 component rows에 결정적으로 expand한다.
  5. Wide key와 expanded key는 unique해야 한다. Duplicate는 affected family를 tolerance 전에 fail한다.
  6. Input node inventory와 source constraint mask로 expected key set을 만든다. CSV zero values 또는 row position에서 reaction identity를 추론하지 않는다.
  7. FESA와 reference projected key sets는 exact equal해야 한다. Missing과 extra rows를 모두 fail한다.
  8. Required FESA/CSV/internal values와 derived scales/norms는 모두 finite여야 한다.
  9. Internal free residual rows는 exact free mask와 force/moment partition을 보존한다. Global balance는 모든 applied source와 constrained reaction을 stable source order로 한 번씩만 사용한다.
  10. Local review rows는 global resultant로 collapse하거나 대체하지 않는다. Review precheck failure는 deterministic review failure로 기록하지만 blocking verdict를 변경하지 않는다.
  11. Warning-only precheck/tolerance failure는 deterministic warning을 만들고 blocking verdict를 변경하지 않는다. Blocking precheck failure는 전체 comparison을 fail한다.
  12. Row omission/synthesis, averaging, source-order matching, clamp, normalization 또는 artifact repair를 허용하지 않는다.

Observed read-only nodal CSV audit:

CSV wide rows duplicate keys nonfinite required values status
reference/shell/shell displacements.csv 49 0 0 readable
reference/shellNL/shellNL displacements.csv 49 0 0 readable
reference/shellNL/shellNL reactions.csv 49 0 0 readable
reference/shellNL-meshfine/shellNL-meshfine displacements.csv 729 0 0 readable
reference/shellNL-meshfine/shellNL-meshfine reactions.csv 729 0 0 readable
reference/shellNL-meshfine_02/shellNL-meshfine_02 displacements.csv 729 0 0 readable
reference/shellNL-meshfine_02/shellNL-meshfine_02 reactions.csv 729 0 0 readable
reference/shellNL-meshfine_02/shellNL-meshfine_02 stresses.csv 5,408 0 0 readable; optional excluded inventory

6. Tolerance and Blocking/Warning Policy

6.1 External families

Section 4.6의 모든 external blocking, warning-only와 review-only error report는 docs/TOLERANCE.md를 그대로 사용한다.

  • Reference-only S=max(abs(reference_i)), near-zero band B=0.01*S.
  • abs(reference_i)<=B이면 abs(fesa-reference)<=B.
  • 그 외 row는 relative error <=0.05.
  • 모든 row와 RMS(error)/S<=0.01이 함께 pass해야 family가 pass한다.
  • Independent absolute floor, max(1,S), omission, averaging 또는 zero clamp는 없다.
  • S=0이면 모든 FESA 값도 exact zero일 때만 pass한다.

Observed reference-only scales는 reader/family audit evidence이며 calibration 값이 아니다.

family rows S B=0.01*S
linear.translation 147 2.37408203e-5 2.37408203e-7
linear.rotation 147 7.60725743e-6 7.60725743e-8
coarse.translation 147 2.37408203e-5 2.37408203e-7
coarse.rotation 147 7.60725743e-6 7.60725743e-8
coarse.local_reaction_inplane_force 48 1.91663182 1.91663182e-2
coarse.local_reaction_transverse_force 24 1.17769805e4 1.17769805e2
coarse.local_reaction_physical_moment 48 1.95418418e4 1.95418418e2
fine.translation 2,187 2.57957054e-5 2.57957054e-7
fine.rotation 2,187 6.58704994e-6 6.58704994e-8
fine.local_reaction_inplane_force 208 5.38827419e-1 5.38827419e-3
fine.local_reaction_transverse_force 104 2.78506128e3 2.78506128e1
fine.local_reaction_physical_moment 208 4.71557520e3 4.71557520e1
meshfine02.translation 2,187 0.0257712454 0.000257712454
meshfine02.rotation 2,187 0.00658291345 0.0000658291345
meshfine02.local_reaction_inplane_force 208 3347707 33477.07
meshfine02.local_reaction_transverse_force 104 2802821.5 28028.215
meshfine02.local_reaction_physical_moment 208 4722449.5 47224.495

Blocking family의 precheck/row/RMS failure만 전체 external-reference verdict를 fail한다. Warning-only는 warning, review-only는 deterministic review finding/error table을 남기지만 blocking verdict를 바꾸지 않는다. RM3와 stress는 family를 만들지 않는다.

6.2 Internal equilibrium families

  • Accepted free force/moment residual은 factor-one accepted trial에서 NSNR-069을 그대로 재현한다. Nonzero matching external scale이면 infinity-norm relative <=1e-2; exact-zero scale이면 typed absolute <=1e-3 force 또는 force-length다.
  • Global force/moment balance는 numerical-review.md §6.2의 sum-of-contribution scale과 dimension-separated normalized metric을 사용하며 각각 <=1e-8이다.
  • Internal gate에 external family tolerance, absolute floor, reference-derived scale 또는 local nodal reaction error를 섞지 않는다.

7. Open Issues and I/O Handoff

Open issues blocking I/O Definition: 없음.

Post-closure verification status: shellnl-meshfine-02-s4-final은 artifact/schema/family contract가 준비되었지만 과거 canonical Stage 6 comparison에는 포함되지 않았다. Merge된 current code의 별도 실행과 comparison evidence는 Implementation Agent 소유이며 이 inventory는 pass/fail을 선언하지 않는다. 이 pending evidence는 기존 feature closure 또는 Release verdict를 바꾸지 않는다.

I/O Definition Agent handoff through Coordinator:

  • Fine primary와 coarse companion nonlinear case의 accepted factor-one identity를 보존한다.
  • Post-closure _02는 기존 fine case와 독립 case/family로 projection하고 별도 current-code verification에 사용한다.
  • Section 4.4의 (a) applied-plus-reaction balance error, (b) constrained reaction resultant, (c) accepted free residual을 separate logical quantities로 최종 projection한다.
  • Global moment는 origin [0,0,0], current X+u force arm과 spatial physical nodal moment를 사용한다. General nonzero prescribed translation/rotation에서도 initial arm/raw rotational residual을 재사용하지 않는다.
  • Local RF/RM은 exact source-key/schema/inventory/finite/error reporting이 있는 review-only다. Local rows를 global sum으로 대체하거나 blocking으로 되돌리지 않는다.
  • Approved Gauss direct stress recovery를 유지한다. Optional element-corner stress artifact에 맞춘 extrapolation/averaging 또는 stress comparison projection을 만들지 않는다.
  • Common external tolerance와 exact prechecks를 변경하지 않는다.

Reference artifact status: required input/displacement/reaction artifacts are present and readable. Optional fine stress identity issue는 transparent nonblocking inventory finding이다. 어떤 reference artifact도 생성, rename, repair, normalize 또는 수정하지 않았다.