modify AGENTS.md, agents, references
This commit is contained in:
@@ -0,0 +1,219 @@
|
||||
# Nonlinear Static Newton–Raphson Coordination Record
|
||||
|
||||
## 1. Metadata and Feature Scope
|
||||
|
||||
- feature_id: `nonlinear-static-newton-raphson`
|
||||
- workflow_state: `needs-formulation`
|
||||
- owner_agent: `coordinator-agent`
|
||||
- request_date: `2026-08-18`
|
||||
- last_updated: `2026-08-23` (Stage 2 사용자 명시 승인; Stage 3 Formulation Agent dispatch 준비)
|
||||
- process_classification: `architectural`
|
||||
- requested_capability: Newton–Raphson 방법을 사용하는 새 nonlinear static analysis procedure
|
||||
- proposed_scope_boundary: 첫 release는 initial configuration 기준 Total Lagrangian, materially linear + geometrically nonlinear MITC4로 제한한다. 요구조건 인터뷰와 8단계 evidence gate를 먼저 완료하며, 승인 전에는 상세 수치·I/O·구현 범위를 확정하거나 기존 linear-static lifecycle을 변경하지 않는다.
|
||||
- naming_note: 사용자 표현 `Newton-Rhapson`은 표준 명칭 `Newton–Raphson`으로 정규화했다.
|
||||
- current_goal: 승인된 `requirements.md`와 사용자 승인된 `research.md`를 입력으로 Stage 3의 구현 가능한 `formulation.md` 계약을 Formulation Agent에게서 확보하고 독립 evidence audit을 수행한다.
|
||||
- constraints: 승인된 physics/scope/tolerance/authoritative output/public compatibility를 보존한다. Stage 3는 O-ROT/O-MAP/O-DRILL/O-MOM/O-BC를 구현 가능한 수학 계약으로 해소하되 HDF5/I/O schema, reference artifact, C++/tests/CMake, phase/Harness 또는 Stage 4 판단으로 확장하지 않는다. Abaqus/Midas 내부 동등성을 주장하지 않는다.
|
||||
- repository_audit: 기존 worktree에는 `.codex/agents/*.toml`과 `AGENTS.md`의 사용자 변경이 있으며 이를 보존한다.
|
||||
|
||||
## 2. Eight-Stage Worklist
|
||||
|
||||
| stage | owner | status | output paths | acceptance gate | evidence summary | blockers | attempt count |
|
||||
| --- | --- | --- | --- | --- | --- | --- | --- |
|
||||
| 1. Requirements | `requirement-agent` | `passed` | `docs/nonlinear-static-newton-raphson/requirements.md` | `<=400` lines, 24 canonical shall requirements, exact 24-row Matrix, approved semantic loss 0, Stage-1 user question 0 | Approved compact content 395 lines; approval metadata 2 lines, current 397; 24↔24 exact ID sets, duplicate/missing/orphan 0, OQ/questions/trivia/placeholders 0; core semantics and NSNR-083 public precedence retained; forbidden changes 0; user explicitly approved on 2026-08-23. | 없음 | 40 |
|
||||
| 2. Research | `research-agent` | `passed` | `docs/nonlinear-static-newton-raphson/research.md` | 필요한 이론·benchmark·source reliability·applicability limit가 충분함 | Owner/Coordinator pass와 2026-08-23 사용자 명시 승인; 10 required sections, S1–S17, 12 benchmark candidates, 11 research-relevant requirement IDs, 14 unique open issues; nonlinear stored reference gap explicit; SHA-256 `C920A6B02381230D1DB419D73FE767D611B36720D27D6410507BA88C3CA28EEE`; forbidden changes 0. | 없음 | 1 |
|
||||
| 3. Formulation | `formulation-agent` | `in-progress` | `docs/nonlinear-static-newton-raphson/formulation.md` | strong/weak form, kinematics, tangent/residual, integration, state/recovery가 구현 가능한 계약이며 O-ROT/O-MAP/O-DRILL/O-MOM/O-BC가 승인 scope 안에서 해소됨 | Stage 3 bounded dispatch 준비; approved requirements SHA-256 `910E351F3F90FFA42F07D15206B55E62C05EAE821E250424430148337506EBF2`, approved research SHA-256 `C920A6B02381230D1DB419D73FE767D611B36720D27D6410507BA88C3CA28EEE`. | Formulation Agent 반환 evidence 대기 | 1 |
|
||||
| 4. Numerical/reference review | `numerical-review-agent` | `pending` | `docs/nonlinear-static-newton-raphson/numerical-review.md`; `docs/nonlinear-static-newton-raphson/reference-model.md` | 두 문서가 함께 `pass-for-io-definition`이며 수치 안정성과 exact reference contract가 준비됨 | 없음 | Stage 3 사용자 승인 필요 | 0 |
|
||||
| 5. I/O definition | `io-definition-agent` | `pending` | `docs/nonlinear-static-newton-raphson/io.md` | Abaqus subset, semantic mapping, HDF5 schema, diagnostics, CSV projection이 승인됨 | 없음 | Stage 4 사용자 승인 필요 | 0 |
|
||||
| 6. Implementation | `implementation-planning-agent`; `implementation-agent` | `pending` | `docs/nonlinear-static-newton-raphson/implementation-plan.md`; `docs/nonlinear-static-newton-raphson/implementation-report.md`; `docs/nonlinear-static-newton-raphson/build-test.md`; `docs/nonlinear-static-newton-raphson/reference-comparison.md` | 상세 인터뷰와 계획 승인 후 TDD, MSVC/x64/Debug CMake/CTest, blocking reference comparison이 통과함 | 없음 | Stage 5 사용자 승인과 implementation-planning interview 필요 | 0 |
|
||||
| 7. Physics evaluation | `physics-evaluation-agent` | `pending` | `docs/nonlinear-static-newton-raphson/physics-evaluation.md` | equilibrium, reaction, direction, path/history, energy, symmetry, model coverage가 `pass-for-release-agent`임 | 없음 | Stage 6 passing evidence 필요 | 0 |
|
||||
| 8. Release readiness | `release-agent` | `pending` | `docs/nonlinear-static-newton-raphson/release.md` | `ready-for-release` recommendation과 acceptance traceability가 완전함 | 없음 | Stage 7 passing evidence 필요 | 0 |
|
||||
|
||||
## 3. Active Dispatch Package and Latest Sub-Agent Return
|
||||
|
||||
### Active Dispatch Package
|
||||
|
||||
- feature_id: `nonlinear-static-newton-raphson`
|
||||
- current_dispatch: `stage-3-formulation-attempt-1`
|
||||
- target_sub_agent: `formulation-agent`
|
||||
- required_inputs:
|
||||
- `docs/nonlinear-static-newton-raphson/requirements.md` (`approved`; user approval date `2026-08-23`; SHA-256 `910E351F3F90FFA42F07D15206B55E62C05EAE821E250424430148337506EBF2`).
|
||||
- `docs/nonlinear-static-newton-raphson/research.md` (`passed`; user explicitly approved Stage 2 on `2026-08-23`; SHA-256 `C920A6B02381230D1DB419D73FE767D611B36720D27D6410507BA88C3CA28EEE`).
|
||||
- `AGENTS.md`, `docs/PRD.md`, `docs/ARCHITECTURE.md`, `docs/ADR.md`, `docs/TOLERANCE.md`, `docs/SOLVER_AGENT_DESIGN.md`.
|
||||
- `docs/linear-static-mitc4-shell/formulation.md`의 approved linear 계약과 §15 gap inventory. §15는 nonlinear 해답으로 복사하지 않는다.
|
||||
- expected_outputs: `docs/nonlinear-static-newton-raphson/formulation.md`
|
||||
- acceptance_gate: Formulation Agent가 `fesa-formulation-spec`을 사용하여 strong/weak form, fixed-initial-reference TL kinematics, finite committed/trial triad와 objective update, exact `24 global -> 20 physical + 4 drill` residual/tangent 및 map Hessian, objective numerical drilling potential/Hessian, fixed-global dead force/moment work, prescribed finite-rotation BC path, integration, state/commit/rollback, recovery와 verification identities를 구현 가능하게 정의한다. O-ROT/O-MAP/O-DRILL/O-MOM/O-BC는 unresolved placeholder 없이 승인 범위 안에서 해소되고, requirement traceability와 explicit assumptions/limits가 있다.
|
||||
- stop_condition: `formulation.md`와 output paths/status/evidence summary/blockers만 Coordinator에 반환한다. Peer/Stage 4를 dispatch하거나 C++/tests/CMake/I/O schema/reference artifact/tolerance/phases/Harness를 생성·변경·실행하지 않는다. 승인된 scope/physics/tolerance/authoritative output/public compatibility를 변경할 필요가 있으면 문서에 임의 반영하지 말고 blocker로 반환한다.
|
||||
- missing_evidence: Formulation Agent 소유 `formulation.md`, self-audit, O-ROT/O-MAP/O-DRILL/O-MOM/O-BC closure map과 acceptance-gate evidence.
|
||||
|
||||
### Latest Sub-Agent Return
|
||||
|
||||
- target_sub_agent: `research-agent`
|
||||
- output_paths: `docs/nonlinear-static-newton-raphson/research.md`
|
||||
- status: `passed` (owner); `needs-rework` (user review gate)
|
||||
- evidence_summary:
|
||||
- 17 external sources cover original MITC4/TL theory, finite rotation, objective/consistent linearization, Full Newton, V&V/MMS and nonlinear shell benchmarks.
|
||||
- B-01–B-06 invariant/software checks, B-07F/B-07M large-rotation cantilevers, public NAFEMS 3DNLG-1/9 candidates, locking characterization and shell-MMS gap are separated by applicability.
|
||||
- `reference/shell/` and `reference/shellR/` are explicitly retained as `nlgeom=NO` linear evidence; exact stored nonlinear input/CSV remains an honest Numerical Review gap.
|
||||
- Objective 24-DOF mapping/drilling, nodal-moment work, prescribed finite-rotation path, invariant tolerances and fixed-step benchmark traversability are routed downstream without inventing contracts.
|
||||
- blockers:
|
||||
- User Stage-2 review/approval only.
|
||||
- self_audit_findings: Coordinator independently confirmed 10 required sections, exact S1–S17 inventory, 12 benchmark sections with artifact/gap/target/cannot-verify/limits/review questions, 11 research-relevant requirement IDs, 14 unique open issues, all local evidence paths present and nonlinear reference artifact hits 0. SHA-256 `C920A6B02381230D1DB419D73FE767D611B36720D27D6410507BA88C3CA28EEE`.
|
||||
- return_contract_check: output path, owner status, source/benchmark coverage, downstream gaps, blockers and ownership confirmation present.
|
||||
- acceptance_evidence_check: all owner and Coordinator Research evidence gates pass; Stage 2 remains `needs-rework` solely for explicit user approval.
|
||||
|
||||
### Compact Migration Evidence
|
||||
|
||||
- `NSNR-001←001,005,015,017,066–068`; `003←003,040`; `041←041,042`; `074←073–075`
|
||||
- `NSNR-006←002,006,043–045`; `007←007,052,054`; `069←069`; `070←070`; `008←008,013,071`; `014←014,072`
|
||||
- `NSNR-046←009,010,046,055–057`; `048←048`; `018←018,060–062`; `063←049–051,063–065`; `016←016,058,059`
|
||||
- `NSNR-011←011,012,047,029`; `019←019,053`; `020←020`; `021←021–023,025`; `024←024,076,077`
|
||||
- `NSNR-083←004,083–085,088`; `026←026`; `030←030–032`; `034←034–037`
|
||||
- Downstream-only: `027,028,033,039,086,087`; removed interview-only record: `038`
|
||||
|
||||
## 4. Gate Decision Log and Workflow State
|
||||
|
||||
| date | gate | decision | owner evidence | workflow state | next eligible action |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
| 2026-08-18 | Intake | `in-progress` | 사용자 요청; repository baseline audit | `needs-requirements` | Requirements Agent dispatch 및 반환 검증 |
|
||||
| 2026-08-18 | Requirements draft | `needs-rework` | `requirements.md` status `draft-needs-user-decision`; Requirement Agent return contract | `needs-user-decision` | `OQ-001`을 사용자에게 질문하고 답변 뒤 Requirement Agent에 bounded revision dispatch |
|
||||
| 2026-08-18 | Requirements OQ-001 | `in-progress` | 사용자 결정: option 1 `Geometric-only MITC4` | `needs-requirements` | 같은 Requirement Agent가 scope 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-001 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator traceability check | `needs-user-decision` | `OQ-004` finite-kinematic framework를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-004 | `in-progress` | 사용자 결정: option 1 `Total Lagrangian` | `needs-requirements` | 같은 Requirement Agent가 initial-configuration 계약 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-004 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator configuration/state/rollback check | `needs-user-decision` | `OQ-006` Newton variant와 tangent refresh를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-006 | `in-progress` | 사용자 결정: option 1 `Full Newton–Raphson` | `needs-requirements` | 같은 Requirement Agent가 per-iteration tangent/factorization/solve 계약 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-006 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator Full Newton event/rollback/determinism check | `needs-user-decision` | `OQ-005` increment control variable을 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-005 | `in-progress` | 사용자 결정: option 1 `Load-factor control` | `needs-requirements` | 같은 Requirement Agent가 scalar load coordinate와 step/load/BC path 계약 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-005 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator load-factor identity/path/rollback check | `needs-user-decision` | `OQ-009` scalar load-factor path proportionality를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-009 | `in-progress` | 사용자 결정: option 1 `Single proportional load/BC path` | `needs-requirements` | 같은 Requirement Agent가 proportional load/BC factor와 constraint/equilibrium/rollback 계약 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-009 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator proportional factor/constraint/equilibrium check | `needs-user-decision` | `OQ-017` increment-size strategy를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-017 | `in-progress` | 사용자 결정: option 2 `Fixed-size stepping` | `needs-requirements` | 같은 Requirement Agent가 fixed increment/final-shortening/fail-without-retry 계약 반영 및 self-audit 수행 |
|
||||
| 2026-08-18 | Requirements OQ-017 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator endpoint/order/no-retry check | `needs-user-decision` | `OQ-020` four-value `*STATIC` mapping을 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-020 | `in-progress` | 사용자 결정: option 2 `First-value driven` | `needs-requirements` | 같은 Requirement Agent가 `*STATIC` use/ignore/validation/diagnostic 및 endpoint consistency 반영 |
|
||||
| 2026-08-18 | Requirements OQ-020 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator mapping/ignored-field warning/input validation check | `needs-user-decision` | `OQ-018` approved `*CLOAD` direction/configuration을 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-018 | `in-progress` | 사용자 결정: option 1 `Dead loads in fixed global directions` | `needs-requirements` | 같은 Requirement Agent가 global-fixed `*CLOAD` magnitude/work/tangent/equilibrium/assembly 계약 반영 |
|
||||
| 2026-08-18 | Requirements OQ-018 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator 62 requirement/matrix traceability 및 stale/금지범위 check | `needs-user-decision` | `OQ-019` prescribed `*BOUNDARY` total/incremental 의미를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-019 | `in-progress` | 사용자 결정: option 1 `Total step target` | `needs-requirements` | 같은 Requirement Agent가 absolute target/interpolation, zero/repeated-step, correction/equilibrium/state/source-identity 계약 반영 |
|
||||
| 2026-08-18 | Requirements OQ-019 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator 65 requirement/matrix traceability, target/correction/rollback 및 stale/금지범위 check | `needs-user-decision` | `OQ-003` nonlinear step cardinality와 propagation 범위를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-003 | `in-progress` | 사용자 결정: option 1 `Single nonlinear step only` | `needs-requirements` | 같은 Requirement Agent가 single-step fail-closed cardinality, identity, ordering, failure preservation과 CLI selection 계약 반영 |
|
||||
| 2026-08-18 | Requirements OQ-003 revision | `needs-rework` | revised `requirements.md`; Requirement Agent self-audit; Coordinator 68 requirement/matrix traceability, cardinality/identity/order/failure-preservation 및 stale/금지범위 check | `needs-user-decision` | `OQ-007` mandatory convergence quantity set을 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-007 quantity set | `in-progress` | 사용자 결정: option 1 `Residual and correction` | `needs-requirements` | 같은 Requirement Agent가 two mandatory gates, same-state/order, free-DOF, nonfinite/max-iteration 및 atomic state 계약 반영 |
|
||||
| 2026-08-18 | Requirements OQ-007 quantity revision return | `needs-rework` | revised `requirements.md`; 72/72 traceability와 quantity contract는 통과했으나 next question이 사용자 지정 norm/normalization/tolerance 대신 line search를 제시함 | `needs-requirements` | 같은 Requirement Agent에 `next-question-routing-mismatch` bounded correction 1회 dispatch |
|
||||
| 2026-08-18 | Requirements OQ-007 routing correction | `needs-rework` | OQ-007 closed/OQ-021 sole pending-next; 72/72 traceability와 accepted quantity/failure/energy-exclusion 보존; Coordinator stale/금지범위 check | `needs-user-decision` | `OQ-021` convergence norm/normalization/threshold contract를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-021 nonzero-scale contract | `in-progress` | 사용자 결정: channel-separated normalized infinity gates; four relative thresholds=`1e-2`; zero-scale 미결정 | `needs-requirements` | 같은 Requirement Agent가 free-DOF channel/same-trial scale/fresh-correction identity를 반영하고 zero-scale만 다음 질문으로 분리 |
|
||||
| 2026-08-18 | Requirements OQ-021 nonzero-scale revision | `needs-rework` | revised `requirements.md`; 72/72 traceability, four `1e-2` channels, same-trial/fresh-solve scale, logical-AND/stable-order 및 sole pending-next 검증 | `needs-user-decision` | OQ-021 zero-denominator policy와 필요한 absolute thresholds를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-021 zero-scale policy partial decision | `in-progress` | 사용자 결정: channel-specific absolute fallback; exact four channel thresholds 미제공 | `needs-requirements` | 같은 Requirement Agent가 policy만 반영하고 four exact values/unit dimensions를 sole pending-next로 유지 |
|
||||
| 2026-08-18 | Requirements OQ-021 zero-scale partial revision | `needs-rework` | revised `requirements.md`; 72/72 traceability, own-channel fallback, common floor/tolerance reuse absence와 four value/dimension request 검증 | `needs-user-decision` | force, force·length, length, dimensionless-rotation exact thresholds 네 값을 사용자에게 요청 |
|
||||
| 2026-08-18 | Requirements OQ-021 final thresholds | `in-progress` | 사용자 결정: each zero-scale threshold numeric literal=`1e-3` with distinct model-consistent dimensions | `needs-requirements` | 같은 Requirement Agent가 OQ-021을 닫고 exact values/dimensions/pass rule/unit semantics/stale text를 전 구간 정렬 |
|
||||
| 2026-08-18 | Requirements OQ-021 final revision | `needs-rework` | revised `requirements.md`; 72/72 traceability, OQ-021 closed/OQ-008 sole pending-next, four typed `1e-3`, nonzero `1e-2`, unit/fallback exclusion 검증 | `needs-user-decision` | OQ-008 line-search 지원 범위를 사용자에게 질문 |
|
||||
| 2026-08-18 | Requirements OQ-008 | `in-progress` | 사용자 결정: option 1 `No line search` | `needs-requirements` | 같은 Requirement Agent가 full-correction direct application과 line-search/damping/merit/reduction/fallback exact absence를 반영하고 max iteration을 OQ-022로 분리 |
|
||||
| 2026-08-19 | Requirements OQ-008 revision | `needs-rework` | user decision date 2026-08-18 유지; revised `requirements.md`; 72/72, OQ-008 closed/OQ-022 sole pending-next, full-correction identity와 line-search lifecycle exact absence 검증 | `needs-user-decision` | OQ-022 maximum Newton iteration count를 사용자에게 질문 |
|
||||
| 2026-08-19 | Requirements OQ-022 | `in-progress` | 사용자 결정: attempted increment당 fixed maximum Newton iterations=`100` | `needs-requirements` | 같은 Requirement Agent가 iteration `1..100`, pass-at-100, fail-after-100 및 post-exhaustion exact absence를 반영 |
|
||||
| 2026-08-19 | Requirements OQ-022 revision | `needs-rework` | revised `requirements.md`; 72/72, OQ-022 closed/OQ-010 sole pending-next, pass-at-99/100, fail-after-100와 post-event absence 검증 | `needs-user-decision` | OQ-010 finite-rotation/director state representation을 사용자에게 질문 |
|
||||
| 2026-08-19 | Requirements OQ-010 | `in-progress` | 사용자 결정: `Incremental rotation vector + committed triad` | `needs-requirements` | 같은 Requirement Agent가 external DOF/incremental correction/committed-trial triad/multiplicative update/rollback과 downstream map gaps를 반영 |
|
||||
| 2026-08-19 | Requirements OQ-010 revision | `needs-rework` | revised `requirements.md`; 75/75, OQ-010 closed/OQ-012 sole pending-next, triad/director invariants, exact rollback과 unresolved exact-map gaps 검증 | `needs-user-decision` | OQ-012 authoritative HDF5 accepted-frame/iteration-history 범위를 사용자에게 질문 |
|
||||
| 2026-08-20 | Requirements OQ-012 | `in-progress` | user decision date 2026-08-19 유지: every committed increment frame, no trial history | `needs-requirements` | 같은 Requirement Agent가 accepted-commit↔frame 1:1/order/factor1 및 trial/failed/partial-final absence를 반영 |
|
||||
| 2026-08-20 | Requirements OQ-012 revision | `needs-rework` | revised `requirements.md`; 75/75, OQ-012 closed/OQ-011 sole pending-next, accepted-frame bijection/order/factor1, absence/preservation와 factor0/schema gap 분리 검증 | `needs-user-decision` | OQ-011 runtime Newton diagnostic granularity를 사용자에게 질문 |
|
||||
| 2026-08-21 | Requirements OQ-011 granularity/content | `in-progress` | 사용자 결정: every entered iteration exactly one structured runtime summary | `needs-requirements` | 같은 Requirement Agent가 complete/early-failure content, nonfabrication/order/runtime-only absence를 반영하고 transport/exit mapping을 분리 |
|
||||
| 2026-08-21 | Requirements OQ-011 granularity revision | `needs-rework` | revised `requirements.md`; 77/77, OQ-011 closed/OQ-025 sole pending-next, completed/early-failure/exhaustion cardinality, nonfabrication와 HDF5/sidecar/reference absence 검증 | `needs-user-decision` | OQ-025 runtime-summary serialization format을 사용자에게 질문 |
|
||||
| 2026-08-21 | Requirements OQ-025 | `in-progress` | 사용자 결정: `JSON Lines runtime records` | `needs-requirements` | 같은 Requirement Agent가 summary↔JSON-object↔line cardinality, finite/parseable/nonaggregation과 runtime-only absence를 반영하고 exact schema/transport/exit gaps를 분리 |
|
||||
| 2026-08-21 | Requirements OQ-025 revision | `needs-rework` | revised `requirements.md`; 79/79, OQ-025 closed/OQ-026 sole pending-next, strict JSON Lines cardinality/finite/nonaggregation/order 및 projection absence 검증 | `needs-user-decision` | OQ-026 destination/buffering/failed-run delivery lifecycle을 사용자에게 질문 |
|
||||
| 2026-08-21 | Requirements OQ-026 | `in-progress` | 사용자 결정: stderr record별 immediate emit+flush | `needs-requirements` | 같은 Requirement Agent가 flush-before-next/return, controlled failure delivery, stable/no-interleaving/no-bulk/no-stdout/projection absence를 반영 |
|
||||
| 2026-08-21 | Requirements OQ-026 revision | `needs-rework` | revised `requirements.md`; 81/81, OQ-026 closed/OQ-028 sole pending-next, stderr emit/flush cardinality/order/delivery와 prohibited path absence 검증 | `needs-user-decision` | OQ-028 unavailable-field JSON schema를 사용자에게 질문 |
|
||||
| 2026-08-21 | Requirements OQ-028 | `in-progress` | 사용자 결정: field omission + explicit not-evaluated identity list; low-risk defaults may auto-apply | `needs-requirements` | 같은 Requirement Agent가 omission/list nonfabrication을 반영하고 next item risk classification을 반환 |
|
||||
| 2026-08-21 | Requirements OQ-028 revision | `needs-rework` | revised `requirements.md`; 82/82, OQ-028 closed/OQ-029 sole pending-next, omission-list bijection/reason/nonfabrication 검증; OQ-029 substantive 분류 | `needs-user-decision` | OQ-029 stderr write/flush failure policy를 사용자에게 질문 |
|
||||
| 2026-08-21 | Requirements JSON policy scope reversal | `in-progress` | 사용자 요청: JSON 정책 철회, simple plain-text analysis log; destination은 substantive ambiguity | `needs-requirements` | 같은 Requirement Agent가 JSON-specific decisions/requirements를 retire하고 OQ-011을 보존한 뒤 stderr text 대 `.txt` file direct confirmation을 반환 |
|
||||
| 2026-08-21 | Requirements JSON policy retirement rework | `needs-rework` | revised `requirements.md`; 82→77/77, retired NSNR-078..082, superseded/retired OQ-025..032, current JSON shall/Matrix 0, OQ-011 보존 검증 | `needs-user-decision` | OQ-033 stderr text 대 actual `.txt` file을 direct confirmation |
|
||||
| 2026-08-21 | Requirements OQ-033 ambiguous response | `needs-rework` | 사용자 원문 verbatim evidence, OQ-033 `pending-clarification`/sole pending-next, 77/77 exact traceability와 금지범위 변경 0건 확인 | `needs-user-decision` | solver-only stderr와 external one-file redirect 의미를 direct yes/no로 확인 |
|
||||
| 2026-08-21 | Requirements OQ-033 solver-managed file partial decision | `needs-rework` | Solver-managed single `.txt`, external redirect superseded, OQ-033 `pending-clarification`/sole pending-next, 77/77 exact traceability와 금지범위 변경 0건 확인 | `needs-user-decision` | same iteration summary의 file-only 대 file+stderr duplication을 direct confirmation |
|
||||
| 2026-08-21 | Requirements OQ-033 file-only/no-duplication approval | `needs-rework` | OQ-033 closed; stderr duplicate 0; OQ-035 `analysis.log` sibling unapproved sole pending-next; repository evidence; 77/77 exact traceability와 금지범위 변경 0건 | `needs-user-decision` | OQ-035 filename/location direct confirmation |
|
||||
| 2026-08-21 | Requirements input-stem output naming scope clarification | `needs-rework` | Exact proposal를 `proposed/pending-scope`로 기록, current shall/Matrix hit 0, OQ-035 sole pending-next, 77/77 exact traceability와 금지범위 변경 0건 | `needs-user-decision` | nonlinear-static-only 대 repository-wide scope direct confirmation |
|
||||
| 2026-08-21 | Requirements repository-wide output scope approval | `in-progress` | 사용자 승인: all analyses input-directory stem outputs, remove `--output`; current one-input/explicit-output CLI/tests/ARCHITECTURE/ADR conflict read-only audit | `needs-requirements` | cross-procedure requirements와 global-doc handoff를 기록하고 removed-option compatibility를 sole pending-next로 분리 |
|
||||
| 2026-08-21 | Requirements repository-wide output revision return | `needs-rework` | 77→80/80, NSNR-083..085, OQ-035 closed/OQ-038 sole pending-next, retired-ID reuse 0; NSNR-085 failure-atomicity scope ambiguity 발견 | `needs-requirements` | same Requirement Agent wording-only correction 후 evidence 재검증 |
|
||||
| 2026-08-21 | Requirements failure-atomicity boundary correction | `needs-rework` | NSNR-085 legacy HDF5 preservation only; new result/log lifecycle OQ-037; 80/80 exact traceability; OQ-038 sole pending-next; forbidden changes 0 | `needs-user-decision` | OQ-038 strict removal/no-alias direct confirmation |
|
||||
| 2026-08-22 | Requirements OQ-038 strict removal approval | `needs-rework` | OQ-038 closed; exact failure stage/code/diagnostic/output absence; OQ-036 unapproved sole pending-next; 80/80 exact traceability와 forbidden changes 0 | `needs-user-decision` | OQ-036 asymmetric lifecycle direct confirmation |
|
||||
| 2026-08-22 | Requirements OQ-036 independent lifecycle approval | `needs-rework` | OQ-036 closed; approved log/HDF5 lifecycle and zero pair atomicity; OQ-037 unapproved sole pending-next; 80/80 exact traceability와 forbidden changes 0 | `needs-user-decision` | OQ-037 grouped log-I/O fail-closed direct confirmation |
|
||||
| 2026-08-22 | Requirements OQ-037 grouped fail-closed approval | `needs-rework` | OQ-037 closed; NSNR-086 operation-stage/preservation/prohibited-event record; 81/81 exact traceability와 forbidden changes 0 | `needs-requirements` | OQ-034 low-risk auto-default revision |
|
||||
| 2026-08-22 | Requirements OQ-037 revision evidence | `needs-rework` | OQ-037 closed, NSNR-086 added, 81/81 exact traceability, OQ-034 low-risk/OQ-039 first substantive classification | `needs-requirements` | OQ-034 auto-default bounded revision |
|
||||
| 2026-08-22 | Requirements OQ-034 auto-default revision | `needs-rework` | OQ-034 closed, NSNR-087 added, 82/82 exact traceability, content/authority scope unchanged, OQ-039 sole pending-next | `needs-user-decision` | OQ-039 stem/path identity option selection |
|
||||
| 2026-08-22 | Requirements OQ-039 lexical identity approval | `in-progress` | 사용자 option 1 approval; concurrency/locking remains substantive | `needs-requirements` | OQ-039 close, open-item audit, same-output concurrency question framing |
|
||||
| 2026-08-22 | Requirements compact-pruning proposal | `needs-rework` | Read-only 24/24 proposal; 360–390 claim과 section sum 불일치, asymmetric output lifecycle mapping 보강 필요; file edits 0 | `needs-requirements` | Same Requirement Agent read-only correction |
|
||||
| 2026-08-22 | Requirements compact-pruning corrected design | `needs-rework` | Exact 363-line budget, 24 canonical records/24 Matrix, approved semantic-loss 0, asymmetric log/HDF5 lifecycle explicit, Stage-1 remaining questions 0; baseline unchanged 2,909/83/83/40 | `needs-user-decision` | Compact sectioned-design 한 번의 명시적 사용자 승인 |
|
||||
| 2026-08-22 | Requirements compact rewrite approval | `in-progress` | User explicitly approved 24-record/363-line-target design and permanent essential-decision-only Requirement Agent discipline | `needs-requirements` | Same Requirement Agent compact rewrite and self-audit |
|
||||
| 2026-08-22 | Requirements compact rewrite return | `needs-rework` | 395 lines, exact 24↔24, no OQ/trivia/questions; Coordinator found NSNR-083 retained exit 2/pre-output but omitted approved pre-input/pre-Analysis precedence and no-alias/deprecation | `needs-requirements` | Same Requirement Agent NSNR-083 wording-only correction |
|
||||
| 2026-08-22 | Requirements NSNR-083 correction return | `needs-rework` | 395 lines, exact 24↔24, NSNR-083 summary/record/Matrix preserve pre-input/pre-Analysis/pre-result-log exit 2 and no alias/deprecation; duplicate/missing/orphan/questions/placeholders/forbidden changes 0 | `needs-user-decision` | Present compact Stage-1 artifact for explicit user approval |
|
||||
| 2026-08-23 | Requirements explicit user approval | `passed` | User explicitly approved `requirements.md`; owner and Coordinator evidence already passed | `research-in-progress` | Dispatch Research Agent for Stage 2 evidence |
|
||||
| 2026-08-23 | Research Agent return and Coordinator audit | `needs-rework` | `research.md` owner pass; Coordinator verified 10 sections, S1–S17, 12 complete benchmark candidates, 11 requirement IDs, 14 unique open issues, local evidence existence, nonlinear stored reference hits 0 and forbidden changes 0 | `needs-user-decision` | Present Stage-2 artifact for explicit user approval |
|
||||
| 2026-08-23 | Research explicit user approval | `passed` | User explicitly approved `research.md`; Research Agent and Coordinator evidence already passed; approved artifact SHA-256 `C920A6B02381230D1DB419D73FE767D611B36720D27D6410507BA88C3CA28EEE` | `needs-formulation` | Dispatch Formulation Agent for bounded Stage 3 evidence |
|
||||
| 2026-08-23 | Formulation dispatch attempt 1 | `in-progress` | Approved Stage-1/2 baselines and project contracts audited; bounded package requires O-ROT/O-MAP/O-DRILL/O-MOM/O-BC closure without downstream contract changes | `needs-formulation` | Await Formulation Agent return and independently audit Stage-3 evidence |
|
||||
|
||||
- current_dispatch: `stage-3-formulation-attempt-1`
|
||||
- current_workflow_state: `needs-formulation`
|
||||
- next_gate_requires_user_approval: `false` (owner evidence audit 선행)
|
||||
|
||||
## 5. Risk, Blocker, and User-Decision Register
|
||||
|
||||
| id | type | description | owner | status |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| RISK-001 | architecture | 기존 `LinearStaticAnalysis` private lifecycle은 단일 factorization/substitution과 final frame만 소유하므로 nonlinear increment/iteration/state commit을 삽입하면 ADR 경계를 위반한다. | `coordinator-agent` routing | open |
|
||||
| RISK-002 | scope | `Newton–Raphson`은 solution algorithm이고 geometric/material/contact nonlinearity 범위를 단독으로 결정하지 않는다. | `requirement-agent` | mitigated by DECISION-001 |
|
||||
| RISK-003 | contract | 현재 `Element`는 displacement-dependent residual/consistent tangent/trial state 계약이 없고 `AnalysisState`는 nonlinear history를 소유하지 않는다. | downstream formulation/architecture gates | open |
|
||||
| RISK-004 | input | 현재 `NLGEOM=YES`는 `unsupported-nonlinear-geometry`로 거부되고 `*STATIC` 네 값은 provenance로만 보존된다. | downstream requirements/I/O gates | open |
|
||||
| RISK-005 | verification | exact nonlinear reference artifacts와 path-dependent blocking quantities가 아직 지정되지 않았다. | downstream numerical-review gate | open |
|
||||
| DECISION-001 | user decision | 첫 release는 materially linear + geometrically nonlinear MITC4로 고정한다. Material-only와 combined material/geometric nonlinearity는 이 release 범위 밖이다. | user via Coordinator | closed |
|
||||
| DECISION-002 | user decision | First-release geometric-nonlinear MITC4 kinematic framework는 initial configuration 기준 `Total Lagrangian`으로 고정한다. Updated Lagrangian과 corotational 의미는 이 release 범위 밖이다. | user via Coordinator | closed |
|
||||
| DECISION-003 | user decision | Newton variant는 `Full Newton–Raphson`으로 고정한다. 매 iteration의 current trial/candidate state에서 residual과 algorithmically consistent tangent를 재평가하고, 그 tangent로 새 factorization/solve를 수행한다. Modified Newton과 adaptive refresh는 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-004 | user decision | First-release nonlinear increment control은 하나의 scalar load coordinate/load factor로 approved load/BC path를 진행하는 `Load-factor control`로 고정한다. Controlled-displacement와 arc-length/path-following control은 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-005 | user decision | 모든 approved `*CLOAD`와 nonzero prescribed `*BOUNDARY` target은 같은 dimensionless scalar load factor로 step-start 값에서 target까지 비례 진행한다. Fixed step-start BC와 independent/non-proportional amplitude/path는 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-006 | user decision | First-release는 approved fixed load-factor increment size를 반복하고 factor 1에 정확히 도달하도록 마지막 increment만 작게 조정하는 `Fixed-size stepping`으로 고정한다. Automatic growth, cutback/retry와 explicit schedule은 out-of-scope며 attempted increment failure는 재시도 없이 analysis failure다. | user via Coordinator | closed |
|
||||
| DECISION-007 | user decision | Nonlinear four-value `*STATIC`은 first positive value만 fixed load-factor increment로 사용하고 second/period는 exact supported endpoint `1`을 요구하며 positive minimum/maximum은 입력 호환성을 위해 수용하지만 runtime stepping에는 사용하지 않는 `First-value driven` mapping으로 고정한다. Strict tuple과 single-value form은 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-008 | user decision | First-release approved `*CLOAD` force/moment component directions는 initial/current deformation과 무관하게 fixed global frame에 유지되고 common scalar factor로 magnitude만 비례 진행하는 dead-load semantics로 고정한다. Follower nodal loads, selectable dual semantics, external-load geometric tangent/follower work는 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-009 | user decision | Nonzero prescribed `*BOUNDARY` input value는 factor 1의 absolute global-DOF `Total step target`이며 step-start committed value에서 target까지 common scalar factor로 보간한다. Incremental delta와 selectable dual semantics는 out-of-scope다. | user via Coordinator | closed |
|
||||
| DECISION-010 | user decision | First release는 입력당 exactly one supported geometrically nonlinear static step만 허용하고 no-prior-history baseline에서 factor 0→1을 수행한다. Multiple nonlinear steps, mixed linear/nonlinear steps, cross-step state/load/BC propagation과 procedure transition은 out-of-scope/fail-closed다. | user via Coordinator | closed |
|
||||
| DECISION-011 | user decision | First-release increment acceptance는 free-DOF equilibrium residual과 Newton correction의 두 mandatory quantity가 각각 승인 gate를 모두 통과해야 한다. Energy convergence는 diagnostic/mandatory가 아닌 out-of-scope다. Norm, normalization과 tolerance는 별도 결정으로 남긴다. | user via Coordinator | closed |
|
||||
| DECISION-012 | user decision | Four channel-separated infinity gates의 nonzero-scale relative threshold는 각각 `1e-2`다. Zero denominator에는 own-channel absolute fallback을 적용하며 네 numeric literal은 모두 `1e-3`: force residual은 model-consistent force, moment residual은 force·length, translational correction은 length, rotational correction은 later-approved convention의 dimensionless rotation parameter다. `.inp` 단위 추론/변환은 하지 않는다. | user via Coordinator | closed |
|
||||
| DECISION-013 | user decision | First release는 `No line search`다. 각 successful fresh tangent correction solve의 full correction을 damping/backtracking/trial-step reduction 없이 next candidate에 그대로 적용하며 merit/acceptance/reduction loop, selectable input과 fallback은 out-of-scope/fail-closed다. | user via Coordinator | closed |
|
||||
| DECISION-014 | user decision | Attempted increment당 maximum Newton iteration count는 product-fixed `100`이다. Entered iteration은 `1..100`; iteration 100 gate pass는 accept 가능하고 fail 시 iteration 101/candidate/retry/cutback 없이 immediate failure 및 prior committed state/result preservation을 적용한다. | user via Coordinator | closed |
|
||||
| DECISION-015 | user decision | MITC4 Newton solve는 dimensionless incremental rotation-vector correction을 만들고 authoritative rotational state는 orthonormal right-handed committed triad `Q`이며 director는 third axis다. Separate trial triad를 사용하고 large rotation은 multiplicative composition으로 갱신한다. Exact map/side/frame/parameterization/re-orthonormalization/drilling/derivatives는 downstream gap이다. | user via Coordinator | closed |
|
||||
| DECISION-016 | user decision | Successful analysis의 authoritative `results.h5`는 each committed nonlinear increment마다 exactly one accepted frame을 stable accepted-factor order로 저장하고 factor-1 frame을 포함한다. Trial/failed/duplicate/missing/partial-final history는 없으며 pre-existing valid final을 exact 보존한다. Exact schema와 factor-0 frame 여부는 downstream gap이다. | user via Coordinator | closed |
|
||||
| DECISION-017 | user decision | Every entered Newton iteration은 exactly one deterministic structured runtime summary를 낸다. Complete gate는 four-channel identities/norms/branch/threshold/pass/combined transition을 포함하고 early failure는 last-completed/failing stage와 later fields absent/not-evaluated를 기록한다. 이는 diagnostic-only이며 HDF5/sidecar/authoritative/reference quantity가 아니다. Transport/exit mapping은 별도 미결정이다. | user via Coordinator | closed |
|
||||
| DECISION-018 | superseded user decision | JSON Lines serialization family 결정은 DECISION-023 scope reversal로 current contract에서 retire되며 historical evidence로만 남는다. | user via Coordinator | closed |
|
||||
| DECISION-019 | superseded user decision | JSON stderr exactly-once emit/flush lifecycle 결정은 DECISION-023 scope reversal로 current contract에서 retire되며 historical evidence로만 남는다. | user via Coordinator | closed |
|
||||
| DECISION-020 | superseded user decision | JSON field-omission/not-evaluated-list 결정은 DECISION-023 scope reversal로 current contract에서 retire되며 historical evidence로만 남는다. | user via Coordinator | closed |
|
||||
| DECISION-021 | user operating policy | 물리 결과·수치 거동·public compatibility에 실질 영향 없는 serialization notation/key ordering/diagnostic formatting 등 low-risk 기본 결정은 recommended option을 자동 적용한다. Formulation/Newton/state/tolerance/load-BC/input/failure-rollback/HDF5 authoritative/public compatibility/reference acceptance는 계속 한 번에 하나씩 인터뷰한다. | user via Coordinator | closed |
|
||||
| DECISION-022 | retired pending decision | JSON stderr write/flush failure policy는 DECISION-023 scope reversal로 선택 없이 retire되었다. | user via Coordinator | closed |
|
||||
| DECISION-023 | user scope reversal | JSON-specific runtime log decisions와 파생 contracts를 철회하고 serialization-independent OQ-011 granularity를 보존한 simple plain-text analysis log로 재설계한다. Destination은 stderr text 대 actual `.txt` file의 substantive user decision으로 남긴다. | user via Coordinator | closed |
|
||||
| DECISION-024 | user decision | Solver directly creates exactly one separate plain-text analysis-log file. Per-iteration summaries are file-only; stderr contains log open/write/close fatal diagnostic and final analysis failure summary only, with exact zero per-iteration duplication. External redirect and file+stderr duplication are excluded. Filename/location, overwrite and failure atomicity remain separate questions. | user via Coordinator | closed |
|
||||
| DECISION-025 | user decision | Repository-wide architectural direction approved: all existing/future analyses use input-directory `<filename>.inp -> <filename>_results.h5` and `<filename>_log.txt`, and `--output` is removed. This requires later approved sectioned-design changes to ARCHITECTURE/ADR and cross-procedure regression evidence; no implementation/global-doc change is claimed now. | user via Coordinator | closed |
|
||||
| DECISION-026 | user decision | Every invocation containing `--output`, including the formerly valid explicit path form, fails before input parsing/Analysis construction/result-log creation with exact exit 2 and one ordered `cli-usage` stderr diagnostic. No compatibility alias or deprecation window. | user via Coordinator | closed |
|
||||
| DECISION-027 | user decision | Independent asymmetric lifecycle: current-run log replaces/truncates old log at invocation start and persists on success/failure; HDF5 uses sibling candidate and replaces final only after success, preserving prior valid final on failure; no cross-file pair atomicity. | user via Coordinator | closed |
|
||||
| DECISION-028 | user decision | Log-I/O grouped fail-closed policy: pre-analysis abort on create/open/truncate failure; immediate abort on write/flush; close failure blocks result commit; best-effort one fatal stderr diagnostic attempt, prior HDF5 and retained log prefix preservation, no retry/fallback/continue/result commit. | user via Coordinator | closed |
|
||||
| DECISION-029 | coordinator auto-default | OQ-034 low-risk plain-text representation/ordering: UTF-8 no BOM, one physical tab-separated `label=value` line per entered iteration, fixed semantic field/channel order, explicit `not-evaluated(reason)`, locale-independent finite round-trip numerics, embedded control/backslash escaping. No physics/numerics/path/state/authority change. | Coordinator under DECISION-021 | closed |
|
||||
| DECISION-030 | user decision | OQ-039 user-addressed lexical identity: resolve relative input against invocation CWD, lexically normalize `.`/`..`, do not resolve symlink/junction targets, accept final `.inp` case-insensitively, remove only the last extension and preserve preceding dots/basename case; output beside normalized user-addressed path. | user via Coordinator | closed |
|
||||
| DECISION-031 | superseded proposal | Same-derived-output concurrent invocation ownership의 fine-grained OQ-040 interview는 사용자 process correction으로 중단했다. 승인된 정책은 없으며 필요한 convention은 I/O/Planning owner가 repository evidence로 정한다. | user via Coordinator | closed |
|
||||
| DECISION-032 | user process decision | `requirements.md`를 핵심 Stage-1 계약으로 압축하고 OQ chronology, diagnostic/path/concurrency trivia와 반복 handoff를 제거한다. Minor details는 downstream specialist convention/evidence로 정하며 approved scope/physics/tolerance/public compatibility를 바꿀 때만 사용자 결정을 다시 요청한다. | user via Coordinator | closed |
|
||||
| DECISION-033 | design approval | Target 363 lines, 24 canonical requirements와 24-row Matrix, approved semantic-loss 0의 compact rewrite design. | user via Coordinator | closed |
|
||||
| DECISION-034 | user process decision | Requirement Agent는 approved physics/scope/tolerance/authoritative-output/public compatibility를 바꾸는 essential decision만 사용자에게 묻고, specialist detail은 owning downstream stage가 repository evidence와 conventional FEM practice로 정한다. Equivalence claim은 금지한다. | user via Coordinator; `.codex/agents/requirement-agent.toml` | closed |
|
||||
|
||||
## 6. Rework-Loop Control and Stop Condition
|
||||
|
||||
- normalized_failure_attempts: `requirements-next-question-routing-mismatch`: 1; `requirements-output-failure-atomicity-scope-ambiguity`: 1; `requirements-compact-public-contract-omission`: 1
|
||||
- automatic_rework_limit: 동일 normalized failure classification `2`회
|
||||
- correction_agent_policy: 명확한 implementation failure는 먼저 `implementation-agent`에 반환하고, 반복되거나 원인이 불명확할 때만 `correction-agent`를 dispatch한다.
|
||||
- stop_condition: 동일 classification이 두 번이면 자동 rework를 중단하고 workflow를 `needs-user-decision` 또는 `blocked`로 전환한다.
|
||||
|
||||
## 7. Final Workflow Closure
|
||||
|
||||
- closure_status: `not-eligible`
|
||||
- required_evidence: `docs/nonlinear-static-newton-raphson/release.md`의 `ready-for-release` recommendation
|
||||
- closure_record: 없음
|
||||
|
||||
## 8. No-Change Assertion
|
||||
|
||||
- source_code: 변경 없음
|
||||
- tests: 변경 없음
|
||||
- CMake: 변경 없음
|
||||
- reference_artifacts: 생성·수정·rename 없음
|
||||
- tolerance_policies: 변경 없음
|
||||
- phase_files: 생성 없음
|
||||
- Harness: 실행하지 않음
|
||||
- feature_documents: `coordination.md`, `requirements.md`, `research.md`만 생성됨
|
||||
@@ -0,0 +1,397 @@
|
||||
# Nonlinear Static Newton–Raphson 요구조건
|
||||
|
||||
## 1. Metadata
|
||||
- feature_id: `nonlinear-static-newton-raphson`
|
||||
- title: `Nonlinear Static Analysis Using Newton–Raphson`
|
||||
- status: `approved`
|
||||
- owner_agent: `requirement-agent`
|
||||
- date: `2026-08-22`
|
||||
- approved_by: user
|
||||
- approval_date: `2026-08-23`
|
||||
- authoritative_scope: materially linear, geometrically nonlinear `S4/S4R -> FESA-MITC4`
|
||||
- independence: FESA는 독립 solver이며 Abaqus 또는 Midas의 내부 알고리즘 동등성을 주장하지 않는다.
|
||||
- unit_policy: `.inp` 단위계를 추론하거나 변환하지 않고 사용자가 일관되게 제공한 단위계를 보존한다.
|
||||
|
||||
Parent needs: `NEED-NSNR-001` nonlinear procedure, `NEED-NSNR-002` physics/numerical correctness,
|
||||
`NEED-NSNR-003` state/output integrity, `NEED-NSNR-004` independent verification.
|
||||
|
||||
## 2. Purpose and Expected Behavior
|
||||
FESA는 하나의 지원 nonlinear static step을 scalar load factor로 증가시키며 Full Newton–Raphson으로 각 증분의 평형을 구한다. 수렴한 증분만 atomically commit하고 authoritative accepted result로 기록한다. 기존 linear-static physics와 결과 의미는 보존하되 repository-wide derived output naming은 이 기능과 함께 적용할 승인 방향이다.
|
||||
|
||||
## 3. In Scope
|
||||
- Abaqus source `S4`, `S4R`의 FESA-MITC4 mapping과 homogeneous isotropic linear elasticity
|
||||
- fixed-initial-reference Total Lagrangian geometric nonlinearity와 finite rotational state
|
||||
- same-trial residual/algorithmically consistent tangent, fresh factorization/solve의 Full Newton
|
||||
- fixed scalar load-factor increments, common proportional load/BC path, fixed-global dead `*CLOAD`
|
||||
- factor-1 absolute prescribed `*BOUNDARY` targets와 four-value nonlinear `*STATIC`
|
||||
- four-channel residual/correction convergence, maximum 100 iterations, no line search
|
||||
- separate trial state, atomic commit/rollback, accepted-frame HDF5와 per-iteration text log
|
||||
- deterministic assembly, iteration, frame, result, diagnostic order와 stored-reference verification
|
||||
|
||||
## 4. Out Of Scope
|
||||
- material nonlinearity, nonlinear material history, combined material/geometric nonlinearity
|
||||
- Updated Lagrangian, corotational procedure, multiple or mixed nonlinear steps, cross-step propagation
|
||||
- follower load, non-proportional path, controlled-displacement, arc-length/path-following
|
||||
- modified/adaptive Newton, tangent reuse, line search, damping, automatic growth/cutback/retry
|
||||
- energy/work convergence, trial-state HDF5 history, direct reference-solver execution
|
||||
- Abaqus/Midas formulation, stabilization, state update 또는 결과 절차의 내부 동등성
|
||||
|
||||
## 5. Analysis Definition
|
||||
| item | approved meaning |
|
||||
| --- | --- |
|
||||
| analysis | exactly one nonlinear static step from a no-prior-history baseline |
|
||||
| elements | `S4`, `S4R` source types map to materially linear FESA-MITC4 |
|
||||
| DOFs | global `[UX, UY, UZ, URX, URY, URZ]`; rotational correction is dimensionless |
|
||||
| kinematics | Total Lagrangian relative to one fixed initial configuration |
|
||||
| rotation state | committed orthonormal right-handed triad `Q`; director is its third axis; separate trial triad/director; multiplicative finite-rotation update |
|
||||
| material | homogeneous isotropic linear elasticity; no nonlinear material state |
|
||||
| control | one dimensionless scalar load factor with fixed increments and final shortening to factor 1 |
|
||||
| Newton | same-trial residual and consistent tangent, fresh factorization and correction solve every iteration |
|
||||
| convergence | translational-force residual, rotational-moment residual, translational correction, rotational correction; all four must pass with `<=` |
|
||||
| loads/BCs | fixed-global dead `*CLOAD`; factor-1 absolute `*BOUNDARY` targets on one proportional path |
|
||||
| state | candidate/trial remains separate; complete converged increment commits atomically |
|
||||
| coordinates/units | nodal values are global unless an approved element-local quantity states otherwise; user-consistent units without inference/conversion |
|
||||
|
||||
Exact Total Lagrangian shell equations, strain/stress measures, rotation map details, drilling treatment and consistent derivatives belong to Research/Formulation and Numerical Review without changing this approved scope.
|
||||
|
||||
## 6. Input Requirements
|
||||
- Nonlinear execution requires exactly one supported nonlinear static source step and one semantic step.
|
||||
- Supported first-release meanings are limited to the approved MITC4 material/section, nonlinear `*STATIC`, `*CLOAD`, and `*BOUNDARY` subset.
|
||||
- Nonlinear `*STATIC` has four positive finite values: first is the fixed increment, second represents endpoint 1 exactly, and third/fourth are accepted for compatibility but unused by stepping.
|
||||
- Nonzero prescribed `*BOUNDARY` values are factor-1 absolute global-DOF targets; approved `*CLOAD` components are fixed-global dead forces or moments.
|
||||
- Unsupported, ambiguous, missing, nonfinite, or out-of-scope meanings fail closed rather than falling back to linear or alternate nonlinear behavior.
|
||||
|
||||
## 7. Output Requirements
|
||||
- Successfully committed increments map one-to-one to authoritative accepted HDF5 frames in load-factor order and include the factor-1 frame; trial history is not authoritative output.
|
||||
- `<stem>_results.h5` is completed as a sibling candidate and replaces the final only after success; failure preserves a prior valid final.
|
||||
- `<stem>_log.txt` is replaced/truncated at invocation start and remains the current-run live audit after controlled success or failure.
|
||||
- Every entered Newton iteration has one deterministic diagnostic-only text summary; exact representation and low-level I/O mechanics belong to I/O Definition.
|
||||
- Every analysis procedure uses input-directory `<stem>_results.h5` and `<stem>_log.txt`; every invocation containing literal `--output` treats it as unrecognized and fails with exit code 2 before input parsing, Analysis, result-candidate, log, or output creation, with no compatibility alias or deprecation window. Result and log lifecycles are independent, not a cross-file all-or-nothing commit.
|
||||
- Exact HDF5 paths/shapes, factor-0 projection, triad projection, compression/chunking and path/collision conventions belong to I/O Definition.
|
||||
|
||||
## 8. Requirement Records
|
||||
```yaml
|
||||
- id: FESA-REQ-NSNR-001
|
||||
statement: "The FESA solver shall execute nonlinear static analysis through a separate procedure only when exactly one supported nonlinear source step maps to exactly one semantic step from a no-prior-history baseline."
|
||||
category: functional
|
||||
rationale: "Procedure cardinality and lifecycle must be unambiguous."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "One valid step selects one nonlinear procedure; zero, multiple, mixed, or ambiguous nonlinear steps fail before an attempted nonlinear increment, while unselected approved linear analysis retains its established behavior."
|
||||
tolerance: "Exact source/semantic cardinality and procedure identity."
|
||||
trace_to: {parent_need: "NEED-NSNR-001", downstream_agents: ["I/O Definition Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-003
|
||||
statement: "The FESA solver shall support only materially linear, geometrically nonlinear FESA-MITC4 for source types S4 and S4R in the first release."
|
||||
category: physics
|
||||
rationale: "The approved release is geometric-only and must not create nonlinear material state."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Supported S4/S4R cases use homogeneous isotropic linear elasticity and MITC4; material-nonlinear or combined-nonlinearity input fails closed."
|
||||
tolerance: "Exact supported element/material inventory."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Research Agent", "Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-041
|
||||
statement: "The FESA solver shall use Total Lagrangian kinematics relative to one fixed initial reference configuration."
|
||||
category: physics
|
||||
rationale: "The formulation reference must not change across increments."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: analysis
|
||||
acceptance_criteria: "Every increment and accepted state retains the same initial-reference identity; current geometry is only a derived observable and never re-bases the formulation."
|
||||
tolerance: "Reference identity exact; numerical kinematic tolerances are owned by Numerical Review."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Research Agent", "Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-074
|
||||
statement: "The FESA solver shall retain global DOFs [UX, UY, UZ, URX, URY, URZ], use a dimensionless incremental rotation correction, and maintain separate trial and committed finite-rotation triad/director states."
|
||||
category: physics
|
||||
rationale: "Large rotations require an objective state distinct from failed candidates."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: analysis
|
||||
acceptance_criteria: "Committed Q is orthonormal and right-handed, its third axis is the director, candidate updates are multiplicative, successful commit transfers the complete state, and failure preserves the prior committed state."
|
||||
tolerance: "State identity exact; Q invariants use Numerical Review-approved tolerances."
|
||||
trace_to: {parent_need: "NEED-NSNR-002, NEED-NSNR-003", downstream_agents: ["Research Agent", "Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-006
|
||||
statement: "The FESA solver shall perform Full Newton iterations using the same current-trial residual and algorithmically consistent tangent, followed by a fresh tangent factorization and correction solve."
|
||||
category: numerical
|
||||
rationale: "Residual, tangent, factorization, and correction must describe one trial state."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Each entered iteration records one trial identity shared by residual and tangent, factorizes that tangent after evaluation, and solves its correction with that fresh factorization before convergence or update."
|
||||
tolerance: "Trial/factorization identity and event order exact."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Formulation Agent", "Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-007
|
||||
statement: "The FESA solver shall accept an increment only when its free-DOF equilibrium residual and same-iteration free-DOF Newton correction gates all pass."
|
||||
category: numerical
|
||||
rationale: "Equilibrium and update size are both required convergence evidence."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "All four channel results are combined by logical AND; constrained DOFs are excluded from convergence and their full-equilibrium residual retains reaction meaning."
|
||||
tolerance: "The four channel policies in NSNR-069 and NSNR-070 apply with inclusive <= comparisons."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-069
|
||||
statement: "The FESA solver shall evaluate translational-force and rotational-moment free-residual convergence with channel-separated infinity-norm gates."
|
||||
category: numerical
|
||||
rationale: "Force and moment dimensions require separate scales."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "For a nonzero matching-channel denominator max(||internal||inf, ||external||inf), the same-trial residual ratio passes iff <=1e-2; an exact-zero denominator instead passes iff its numerator is <=1e-3 model-consistent force or <=1e-3 model-consistent force-length, respectively."
|
||||
tolerance: "Relative 1e-2 dimensionless; zero-scale absolute 1e-3 force and 1e-3 force-length."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-070
|
||||
statement: "The FESA solver shall evaluate translational and rotational free-correction convergence with channel-separated infinity-norm gates."
|
||||
category: numerical
|
||||
rationale: "Translation and rotation corrections have different dimensions."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "For a nonzero current-trial incremental-solution denominator relative to the step-start committed state, the fresh-correction ratio passes iff <=1e-2; an exact-zero denominator instead passes iff its numerator is <=1e-3 model-consistent length or <=1e-3 dimensionless rotation, respectively."
|
||||
tolerance: "Relative 1e-2 dimensionless; zero-scale absolute 1e-3 length and 1e-3 dimensionless rotation."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-008
|
||||
statement: "The FESA solver shall permit entered Newton iteration identities 1 through 100 and shall reject nonfinite required iteration data."
|
||||
category: numerical
|
||||
rationale: "The iteration limit and finite-data boundary must be deterministic."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "A pass at iteration 100 may commit; otherwise iteration 100 ends in nonconvergence without iteration 101, and any nonfinite required residual, tangent, correction, state, load, or recovery value fails before acceptance."
|
||||
tolerance: "Iteration identities and finite predicates exact."
|
||||
trace_to: {parent_need: "NEED-NSNR-002, NEED-NSNR-003", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-014
|
||||
statement: "The FESA solver shall apply each successful fresh Newton correction unchanged when another iteration is required and shall use no line search, damping, solver fallback, or energy/work convergence gate."
|
||||
category: constraint
|
||||
rationale: "The approved first release uses direct Full Newton updates only."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "The next candidate uses the fresh solve output without scalar or component modification; convergence depends only on NSNR-069 and NSNR-070."
|
||||
tolerance: "Correction/update identity exact."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-046
|
||||
statement: "The FESA solver shall advance one scalar load factor by a fixed positive increment, shortening only the final increment to reach factor one without growth, cutback, or retry."
|
||||
category: numerical
|
||||
rationale: "Fixed stepping provides the approved deterministic load path."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "The intended and accepted factor sequence starts at zero, never overshoots one, ends at the discrete factor-one identity on success, and analysis failure creates no replacement attempt."
|
||||
tolerance: "Factor/order identity exact; endpoint arithmetic is fixed by Numerical Review before implementation."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-048
|
||||
statement: "The FESA solver shall advance every approved CLOAD and nonzero prescribed BOUNDARY target on one common proportional scalar load-factor path."
|
||||
category: physics
|
||||
rationale: "Loads and prescribed values must share one path identity."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Factor zero reproduces step-start values, intermediate states use the same factor for all approved targets, and factor one reproduces every target."
|
||||
tolerance: "Load-factor and target identity exact."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-018
|
||||
statement: "The FESA solver shall interpret approved CLOAD force and moment components as dead loads fixed in global directions while the common factor scales magnitude only."
|
||||
category: physics
|
||||
rationale: "Follower-load behavior would change equilibrium and tangent meaning."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Force and moment source DOF directions remain unchanged with deformation, moments retain force-length dimensions, and no follower external-load tangent is used."
|
||||
tolerance: "Global component identity exact; values use the model-consistent unit system."
|
||||
trace_to: {parent_need: "NEED-NSNR-002", downstream_agents: ["Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-063
|
||||
statement: "The FESA solver shall interpret each approved nonzero BOUNDARY value as a factor-one absolute global-DOF target interpolated from its step-start committed value."
|
||||
category: physics
|
||||
rationale: "Absolute prescribed values must not be confused with correction increments."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "The prescribed current value follows the common factor, zero start/target remains zero, the constrained correction is distinct from that value, and failed candidates do not change the step-start value."
|
||||
tolerance: "Prescribed path/source identity exact; values use model-consistent displacement or rotation units."
|
||||
trace_to: {parent_need: "NEED-NSNR-002, NEED-NSNR-003", downstream_agents: ["Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-016
|
||||
statement: "The FESA solver shall map nonlinear STATIC four-value data with the first positive finite value as fixed increment, the second as endpoint one, and positive finite third and fourth values accepted but unused by stepping."
|
||||
category: input
|
||||
rationale: "The approved compatibility fields must not alter fixed stepping."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Valid four-value data records the first value for runtime use and identifies the third/fourth as unused; invalid arity, nonfinite/nonpositive required values, or period not representing one fails closed."
|
||||
tolerance: "Parsed endpoint-one identity exact; warning representation is owned by I/O Definition."
|
||||
trace_to: {parent_need: "NEED-NSNR-001", downstream_agents: ["I/O Definition Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-011
|
||||
statement: "The FESA solver shall keep trial state separate and atomically commit a complete converged displacement, rotation/director, load-factor, frame, force, and recovery state while preserving the prior committed state on failure."
|
||||
category: functional
|
||||
rationale: "Partial nonlinear state commits would corrupt continuation and results."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Successful validation commits one coherent state identity; iteration, increment, recovery, or output failure leaves the prior committed state and authoritative final result unchanged."
|
||||
tolerance: "State and commit identity exact."
|
||||
trace_to: {parent_need: "NEED-NSNR-003", downstream_agents: ["Formulation Agent", "Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-019
|
||||
statement: "The FESA solver shall preserve stable source identity and stable assembly order and shall derive free residual and constrained reaction from the complete assembled equilibrium at the same state."
|
||||
category: physics
|
||||
rationale: "Equilibrium evidence must remain traceable to source entities and DOFs."
|
||||
source: docs
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Input instance/label/component maps deterministically through assembly, state, diagnostic, result, and comparison; full residual at a trial or accepted state yields free-equilibrium evidence and constrained reactions."
|
||||
tolerance: "Source/component identity and discrete order exact; equilibrium uses approved numerical tolerances."
|
||||
trace_to: {parent_need: "NEED-NSNR-002, NEED-NSNR-004", downstream_agents: ["Formulation Agent", "Numerical Review Agent", "I/O Definition Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-020
|
||||
statement: "The FESA solver shall fail closed on every input or model meaning outside the approved element, material, load, boundary, step, and solver scope."
|
||||
category: input
|
||||
rationale: "Unsupported nonlinear behavior must not become a warning-only or linear fallback."
|
||||
source: docs
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "A negative inventory for each unsupported class rejects the model before nonlinear state or authoritative output is committed."
|
||||
tolerance: "Exact supported/unsupported inventory."
|
||||
trace_to: {parent_need: "NEED-NSNR-001", downstream_agents: ["I/O Definition Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-021
|
||||
statement: "The FESA solver shall create authoritative accepted HDF5 frames one-to-one with committed increments, including factor one, using a sibling candidate that replaces the final only on success and preserves a prior valid final on failure."
|
||||
category: output
|
||||
rationale: "Authoritative results must contain accepted states only and remain failure-safe."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Committed increment and accepted-frame identities match in factor order, the successful result includes factor one, trial Newton history is absent, and controlled failure does not expose the candidate as final or damage a prior valid final."
|
||||
tolerance: "Commit/frame identity exact; numerical quantities use their approved verification tolerances."
|
||||
trace_to: {parent_need: "NEED-NSNR-003", downstream_agents: ["Numerical Review Agent", "I/O Definition Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-024
|
||||
statement: "The FESA solver shall replace or truncate the single derived text log at invocation start, retain it as the current-run live audit on controlled success or failure, and produce one deterministic diagnostic-only summary for every entered Newton iteration."
|
||||
category: output
|
||||
rationale: "Iteration evidence is required without making trial states authoritative results."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Completed and early-failure iterations preserve their stable iteration/stage and convergence meaning in entered order; the log remains current-run diagnostic evidence and is not HDF5 trial history or reference data."
|
||||
tolerance: "Summary cardinality and semantic identity exact; representation and low-level failure presentation are owned by I/O Definition."
|
||||
trace_to: {parent_need: "NEED-NSNR-003", downstream_agents: ["I/O Definition Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-083
|
||||
statement: "The FESA solver shall apply repository-wide input-directory names <stem>_results.h5 and <stem>_log.txt, treat every invocation containing literal --output as unrecognized and fail it with exit code 2 before input parsing, Analysis, result-candidate, log, or output creation without a compatibility alias or deprecation window, and use independent asymmetric result/log lifecycles without cross-file all-or-nothing commit."
|
||||
category: output
|
||||
rationale: "Public output identity and authority must be consistent across procedures."
|
||||
source: user
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Every existing and future procedure derives the two approved names beside its input and preserves linear-static numerical/HDF5 meaning under the migration; every argument form containing literal --output fails as unrecognized with exit code 2 before input parsing, Analysis, result-candidate, log, or output creation and has no accepted alias or deprecation form; log initialization does not commit HDF5 and HDF5 failure does not roll back the live log."
|
||||
tolerance: "Names, exit code, lifecycle independence, and regression identity exact; path and ownership mechanics are downstream decisions."
|
||||
trace_to: {parent_need: "NEED-NSNR-003", downstream_agents: ["I/O Definition Agent", "Implementation Planning Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-026
|
||||
statement: "The FESA solver shall produce deterministic increment, iteration, assembly/reduction, accepted-frame, result-row, and diagnostic ordering for the same input and approved runtime configuration."
|
||||
category: constraint
|
||||
rationale: "Reproducible numerical and reference evidence requires stable discrete ordering."
|
||||
source: docs
|
||||
priority: must
|
||||
verification_method: test
|
||||
acceptance_criteria: "Repeated runs and approved thread configurations preserve the same intended/attempted/accepted factor identities, Newton event sequence, sparse/reduction structure, frame order, result identities, and log order."
|
||||
tolerance: "Discrete structure/order exact; floating equality policy is set by Numerical Review from repository conventions."
|
||||
trace_to: {parent_need: "NEED-NSNR-003, NEED-NSNR-004", downstream_agents: ["Numerical Review Agent", "Implementation Planning Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-030
|
||||
statement: "The FESA solver shall pass an approved verification portfolio covering the materially linear small-displacement limit, tangent consistency, equilibrium/reaction, symmetry or objectivity, and commit/rollback behavior."
|
||||
category: verification
|
||||
rationale: "Convergence alone does not establish nonlinear solver correctness."
|
||||
source: docs
|
||||
priority: must
|
||||
verification_method: analysis
|
||||
acceptance_criteria: "Numerical Review defines blocking cases and quantities for every listed category, and implementation passes each approved analytical, invariant, physics, or comparison gate."
|
||||
tolerance: "Case-specific tolerances are owned by Numerical Review; existing linear-limit tolerance remains unchanged."
|
||||
trace_to: {parent_need: "NEED-NSNR-004", downstream_agents: ["Research Agent", "Formulation Agent", "Numerical Review Agent"]}
|
||||
status: approved
|
||||
- id: FESA-REQ-NSNR-034
|
||||
statement: "The FESA solver shall compare only approved accepted-state quantities against stored reference artifacts using stable source/component matching and the common docs/TOLERANCE.md policy."
|
||||
category: verification
|
||||
rationale: "Reference acceptance must be deterministic and independent of solver execution."
|
||||
source: docs
|
||||
priority: must
|
||||
verification_method: reference-comparison
|
||||
acceptance_criteria: "Numerical Review selects the exact existing input and required CSV quantities; precheck rejects missing, extra, duplicate, or nonfinite required rows before blocking/warning family comparison, without averaging or row-order matching."
|
||||
tolerance: "docs/TOLERANCE.md family-scale policy; exact artifacts and families are a Numerical Review-owned readiness gap."
|
||||
trace_to: {parent_need: "NEED-NSNR-004", downstream_agents: ["Numerical Review Agent", "I/O Definition Agent"]}
|
||||
status: approved
|
||||
```
|
||||
|
||||
## 9. Verification Quantities
|
||||
| quantity | dimension / coordinates | role |
|
||||
| --- | --- | --- |
|
||||
| nodal displacement and committed rotation/director state | length and dimensionless rotation; global | accepted-state kinematics and rollback |
|
||||
| full residual and constrained reaction | force or force-length; global DOF | equilibrium and reaction evidence |
|
||||
| MITC4 internal force, stress and strain | model-consistent dimensions; approved element frame/configuration | formulation, physics and reference verification |
|
||||
| scalar load factor and accepted frame identity | dimensionless | path, commit and output ordering |
|
||||
| four convergence channels | typed as NSNR-069/070 | internal iteration acceptance only |
|
||||
| iteration summary | diagnostic identity, not a physical reference quantity | convergence/failure audit |
|
||||
|
||||
## 10. Tolerance Policy
|
||||
- `.inp` values remain in the user's consistent unit system; FESA performs no unit inference or conversion.
|
||||
- Only nonzero-scale convergence ratios are dimensionless and pass with `<=1e-2`.
|
||||
- Exact-zero residual thresholds are `1e-3` force and `1e-3` force-length; correction thresholds are `1e-3` length and `1e-3` dimensionless rotation. Equal literals do not merge their dimensions.
|
||||
- External comparisons use `docs/TOLERANCE.md`; internal invariant, tangent, endpoint-arithmetic and physics tolerances are fixed by Numerical Review before implementation.
|
||||
|
||||
## 11. Reference Case Requirements
|
||||
- The current Stage-1 gap is selection of exact stored nonlinear input and only the CSV quantities required for acceptance.
|
||||
- Numerical Review owns artifact readiness, blocking/warning families, source/component identity and HDF5 projection; this gap does not require another Stage-1 user question.
|
||||
- Agents do not run Abaqus, Nastran or another reference solver and do not create, rename, repair or normalize stored reference artifacts.
|
||||
|
||||
## 12. Requirement Verification Matrix
|
||||
| id | category | source | priority | method | compact acceptance | tolerance | downstream | status |
|
||||
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
|
||||
| `NSNR-001` | functional | user | must | test | exactly one supported source/semantic nonlinear step | exact cardinality | I/O; Planning | approved |
|
||||
| `NSNR-003` | physics | user | must | test | MITC4 geometric-only, linear isotropic material | exact inventory | Research; Formulation; Numerical Review | approved |
|
||||
| `NSNR-041` | physics | user | must | analysis | fixed initial reference, no re-basing | identity exact | Research; Formulation; Numerical Review | approved |
|
||||
| `NSNR-074` | physics | user | must | analysis | finite committed/trial triad/director state and rollback | invariant tolerance downstream | Formulation; Numerical Review | approved |
|
||||
| `NSNR-006` | numerical | user | must | test | same-trial residual/tangent and fresh factorization/solve | identity/order exact | Formulation; Numerical Review; Planning | approved |
|
||||
| `NSNR-007` | numerical | user | must | test | all four free-DOF gates pass; constrained residual is reaction | NSNR-069/070 | Numerical Review; Planning | approved |
|
||||
| `NSNR-069` | numerical | user | must | test | force/moment residual relative or typed zero-scale gates | `1e-2`; typed `1e-3` | Numerical Review; Planning | approved |
|
||||
| `NSNR-070` | numerical | user | must | test | translation/rotation correction relative or typed zero-scale gates | `1e-2`; typed `1e-3` | Numerical Review; Planning | approved |
|
||||
| `NSNR-008` | numerical | user | must | test | finite data, iterations 1..100, pass at 100 allowed | predicates/count exact | Numerical Review; Planning | approved |
|
||||
| `NSNR-014` | constraint | user | must | test | unchanged full correction; no line search/fallback/energy gate | identity exact | Numerical Review; Planning | approved |
|
||||
| `NSNR-046` | numerical | user | must | test | fixed increment, final shortening, no retry | factor/order exact | Numerical Review; Planning | approved |
|
||||
| `NSNR-048` | physics | user | must | test | one proportional factor for all load/BC targets | identity exact | Formulation; Numerical Review | approved |
|
||||
| `NSNR-018` | physics | user | must | test | fixed-global dead force/moment and no follower tangent | component exact | Formulation; Numerical Review | approved |
|
||||
| `NSNR-063` | physics | user | must | test | absolute factor-one BC target and separate correction | path/source exact | Formulation; Numerical Review | approved |
|
||||
| `NSNR-016` | input | user | must | test | four-value STATIC mapping and validation | endpoint exact | I/O; Planning | approved |
|
||||
| `NSNR-011` | functional | user | must | test | separate trial, atomic commit, prior-state preservation | state exact | Formulation; Numerical Review; Planning | approved |
|
||||
| `NSNR-019` | physics | docs | must | test | stable source/assembly and full-equilibrium residual/reaction | identity/order exact | Formulation; Numerical Review; I/O | approved |
|
||||
| `NSNR-020` | input | docs | must | test | unsupported meaning fails closed | inventory exact | I/O; Planning | approved |
|
||||
| `NSNR-021` | output | user | must | test | accepted commit/frame bijection and failure-safe HDF5 final | identity exact | Numerical Review; I/O; Planning | approved |
|
||||
| `NSNR-024` | output | user | must | test | one ordered diagnostic summary per entered iteration and persistent live log | semantic identity exact | I/O; Planning | approved |
|
||||
| `NSNR-083` | output | user | must | test | repository names; every literal --output form unrecognized with pre-input/pre-Analysis/pre-output exit 2 and no alias/deprecation; asymmetric lifecycle; linear regression | public identity/precedence exact | I/O; Planning; Numerical Review | approved |
|
||||
| `NSNR-026` | constraint | docs | must | test | deterministic factor/iteration/assembly/frame/result/log order | discrete order exact | Numerical Review; Planning | approved |
|
||||
| `NSNR-030` | verification | docs | must | analysis | blocking small-limit/tangent/physics/rollback portfolio | case-specific downstream | Research; Formulation; Numerical Review | approved |
|
||||
| `NSNR-034` | verification | docs | must | reference-comparison | stored artifacts, deterministic matching and precheck | docs/TOLERANCE.md | Numerical Review; I/O | approved |
|
||||
|
||||
## 13. Open Questions
|
||||
없음. Specialist gaps are owned by downstream stages and are escalated only if they would change approved scope, physics, tolerance, authoritative output or public compatibility.
|
||||
|
||||
## 14. Downstream Handoff
|
||||
- Research/Formulation: exact Total Lagrangian MITC4 equations, strain/stress measures, rotation map/side/frame, drilling and consistent derivatives.
|
||||
- Numerical Review: endpoint arithmetic, tangent/objectivity/state-invariant checks, benchmark portfolio, performance adequacy and exact reference artifacts/quantities.
|
||||
- I/O Definition: HDF5 schema/projection/chunking/factor-0 handling, log representation/failure presentation and path/collision conventions.
|
||||
- Implementation Planning: backend adapters, output ownership primitive, candidate filename, performance targets and requirement-traced TDD plan.
|
||||
- Coordinator: escalate only a downstream proposal that changes the approved scope, physics, convergence tolerance, authoritative-result meaning or public output contract; do not advance the workflow on this document alone.
|
||||
@@ -0,0 +1,602 @@
|
||||
# Nonlinear Static Newton–Raphson 연구 브리프
|
||||
|
||||
## 1. Metadata
|
||||
|
||||
- feature_id: `nonlinear-static-newton-raphson`
|
||||
- source_requirement: `docs/nonlinear-static-newton-raphson/requirements.md`
|
||||
- source_requirement_status: `approved`
|
||||
- source_requirement_approval_date: `2026-08-23`
|
||||
- status: `passed`
|
||||
- owner_agent: `research-agent`
|
||||
- date: `2026-08-23`
|
||||
- research_scope: materially linear, geometrically nonlinear Total Lagrangian
|
||||
`S4/S4R -> FESA-MITC4`, finite rotation, Full Newton, fixed proportional path,
|
||||
state/output integrity, and verification evidence
|
||||
- evidence_boundary: 이 문서는 정식화, 수치 허용오차, C++ API, I/O schema 또는
|
||||
reference artifact를 확정하지 않는다. 외부 solver의 공개 결과는 후보 수치 evidence일
|
||||
뿐 내부 알고리즘 동등성 evidence가 아니다.
|
||||
|
||||
이 문서의 주장은 다음 네 가지 표지를 사용한다.
|
||||
|
||||
- **Verified fact**: 인용한 원문·공식 문서가 직접 뒷받침한다.
|
||||
- **Project decision**: 승인된 요구조건 또는 프로젝트 전역 계약이 고정한다.
|
||||
- **Inference**: verified fact와 project decision에서 도출한 연구 해석이며 downstream
|
||||
재검토가 필요하다.
|
||||
- **Open issue**: evidence 또는 downstream 결정이 아직 없다.
|
||||
|
||||
## 2. Research Questions
|
||||
|
||||
승인된 `FESA-REQ-NSNR-003`, `FESA-REQ-NSNR-041`, `FESA-REQ-NSNR-074`,
|
||||
`FESA-REQ-NSNR-006`, `FESA-REQ-NSNR-048`, `FESA-REQ-NSNR-018`,
|
||||
`FESA-REQ-NSNR-063`, `FESA-REQ-NSNR-011`, `FESA-REQ-NSNR-019`,
|
||||
`FESA-REQ-NSNR-030`, `FESA-REQ-NSNR-034`의 specialist gap에서 다음 질문을 도출했다.
|
||||
|
||||
1. 고정 초기 참조면을 쓰는 Total Lagrangian 4-node Reissner–Mindlin/MITC4 shell에서
|
||||
materially linear response를 표현할 때 어떤 strain/stress/virtual-work 근거가 필요한가?
|
||||
2. committed/trial triad와 director를 multiplicative finite-rotation update로 갱신할 때
|
||||
orthonormality뿐 아니라 objectivity, path independence, singularity avoidance와 consistent
|
||||
linearization을 어떻게 별도로 입증해야 하는가?
|
||||
3. 기존 linear MITC4의 `24 global -> 20 physical + 4 numerical drill` 경계를 finite rotation에
|
||||
확장할 때 global map의 1·2차 미분, rotation chart/recentering, objective drilling potential과
|
||||
nodal-moment work 중 무엇이 아직 미해결인가?
|
||||
4. Full Newton에서 residual, algorithmic tangent, factorization과 correction이 같은 trial
|
||||
state를 가리킨다는 것을 어떤 수학적·실행 순서 evidence로 확인할 수 있는가?
|
||||
5. fixed-global dead `CLOAD`와 absolute prescribed `BOUNDARY`를 하나의 scalar factor로
|
||||
진행할 때 translation, finite rotation, reaction과 external work의 의미는 무엇인가?
|
||||
6. original MITC4의 shear/membrane locking, distorted geometry, drilling, quadrature와
|
||||
conditioning 위험을 nonlinear large-rotation 상태에서 어떻게 제한하고 특성화할 것인가?
|
||||
7. small-displacement limit, tangent consistency, equilibrium/reaction, rigid-body/objectivity,
|
||||
symmetry, deterministic commit/rollback을 서로 독립적으로 검증할 benchmark/patch/MES/MMS
|
||||
portfolio는 무엇인가?
|
||||
8. 공개 benchmark와 기존 저장 artifact 중 정확히 어떤 입력·target quantity가 현재
|
||||
사용 가능하며, 무엇이 nonlinear acceptance artifact로는 아직 비어 있는가?
|
||||
|
||||
| research question | requirement_ids | research gap |
|
||||
| --- | --- | --- |
|
||||
| RQ-1 | `FESA-REQ-NSNR-003`, `FESA-REQ-NSNR-041` | TL materially-linear MITC4 theory boundary |
|
||||
| RQ-2 | `FESA-REQ-NSNR-074` | multiplicative triad/director update, objectivity and derivatives |
|
||||
| RQ-3 | `FESA-REQ-NSNR-003`, `FESA-REQ-NSNR-074` | nonlinear global/physical/drill map and finite nodal-moment work |
|
||||
| RQ-4 | `FESA-REQ-NSNR-006` | same-trial Full Newton consistency evidence |
|
||||
| RQ-5 | `FESA-REQ-NSNR-048`, `FESA-REQ-NSNR-018`, `FESA-REQ-NSNR-063` | proportional dead-load/prescribed finite path |
|
||||
| RQ-6 | `FESA-REQ-NSNR-003` | locking, drilling, quadrature and conditioning limits |
|
||||
| RQ-7 | `FESA-REQ-NSNR-011`, `FESA-REQ-NSNR-019`, `FESA-REQ-NSNR-030` | physics, tangent, objectivity and transactional verification portfolio |
|
||||
| RQ-8 | `FESA-REQ-NSNR-034` | exact stored/public nonlinear artifact and target readiness |
|
||||
|
||||
## 3. Source Inventory
|
||||
|
||||
### 3.1 Project contracts and local evidence
|
||||
|
||||
Project contract는 외부 reliability tier와 혼합하지 않고 `Project`로 표시한다.
|
||||
|
||||
| id | source_type | title/path | reliability_tier | 사용 범위와 한계 |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| P1 | approved requirement | `docs/nonlinear-static-newton-raphson/requirements.md` | Project | 승인 scope, load path, Newton/state/output/verification 계약. 정식 방정식·내부 tolerance·exact reference artifact는 고정하지 않음 |
|
||||
| P2 | project governance | `AGENTS.md`, `docs/SOLVER_AGENT_DESIGN.md`, `docs/PRD.md` | Project | 독립 solver 정체성, 8-stage gate, research ownership과 external-reference 경계 |
|
||||
| P3 | architecture/decision | `docs/ARCHITECTURE.md`, `docs/ADR.md` (`ADR-016`, `ADR-017`, `ADR-022`) | Project | 별도 nonlinear procedure, deterministic assembly, candidate-before-commit, full residual/reaction 및 공통 comparison 정책. nonlinear shell 방정식은 없음 |
|
||||
| P4 | tolerance policy | `docs/TOLERANCE.md` | Project | 저장 reference row precheck와 family-scale row/RMS gate. tangent/objectivity/orthonormality/iteration tolerance를 제공하지 않음 |
|
||||
| P5 | existing linear MITC4 evidence | `docs/linear-static-mitc4-shell/{research,formulation,numerical-review,reference-model}.md` | Project | 승인된 linear MITC4 물리/적분/결과 경계와 기존 test inventory. `formulation.md` §15는 future-only gap inventory이며 nonlinear 정식화 evidence가 아님 |
|
||||
| P6 | local tests/artifacts | `tests/unit/elements/mitc4_shell_test.cpp`, `tests/unit/model/shell_geometry_test.cpp`, `tests/reference/mitc4_reference_cases_test.cpp`, `tests/reference/mitc4_reference_comparison_test.cpp`, `reference/shell/`, `reference/shellR/` | Project | linear rigid/patch/geometry/reference 회귀의 exact local identity. 두 `.inp` 모두 `nlgeom=NO`; nonlinear acceptance-ready가 아님 |
|
||||
|
||||
### 3.2 External sources
|
||||
|
||||
- access_date: `2026-08-23` (`S1`–`S17` 공통)
|
||||
- tier_policy: Tier 1은 공식 표준·기관·solver manual, Tier 2는 peer-reviewed 원 논문·교과서,
|
||||
Tier 3는 탐색용 synthesis를 뜻한다.
|
||||
|
||||
| id | source_type | title | author_or_org | URL_or_DOI | reliability_tier | 제공 evidence / 접근·적용 한계 |
|
||||
| --- | --- | --- | --- | --- | --- | --- |
|
||||
| S1 | peer-reviewed original paper | *A Continuum Mechanics Based Four-Node Shell Element for General Non-linear Analysis* | E. N. Dvorkin, K.-J. Bathe | [MIT author PDF](https://web.mit.edu/kjb/www/Publications_Prior_to_1998/A_Continuum_Mechanics_Based_Four-Node_Shell_Element_for_General_Nonlinear_Analysis.pdf), DOI [`10.1108/eb023562`](https://doi.org/10.1108/eb023562) | Tier 2 | original four-node continuum-based shell, Total Lagrangian nonlinear equations, assumed transverse shear, examples, `2x2x2` elastic integration. 1984 five-physical-DOF update이며 FESA global 24-DOF/drill 계약은 없음; PDF는 공개 author copy이나 저작권 자료 |
|
||||
| S2 | peer-reviewed original paper | *On a Stress Resultant Geometrically Exact Shell Model. Part III: Computational Aspects of the Nonlinear Theory* | J. C. Simo, D. D. Fox, M. S. Rifai | [publisher record](https://www.sciencedirect.com/science/article/pii/0045782590900943), DOI [`10.1016/0045-7825(90)90094-3`](https://doi.org/10.1016/0045-7825(90)90094-3) | Tier 2 | singularity-free exact director update, finite-deformation mixed fields, exact discrete-equilibrium linearization, nonlinear examples. stress-resultant shell model이므로 FESA 식의 직접 근거가 아니며 publisher full text 접근 제한 가능 |
|
||||
| S3 | peer-reviewed original paper | *On the Choice of Finite Rotation Parameters* | A. Ibrahimbegović | [publisher record](https://www.sciencedirect.com/science/article/pii/S0045782597000595), DOI [`10.1016/S0045-7825(97)00059-5`](https://doi.org/10.1016/S0045-7825(97)00059-5) | Tier 2 | finite-rotation parametrization과 incremental rotation/Newton 구현 선택의 영향. 일반 구조 rotation 논문이며 MITC4/drilling 특화가 아님 |
|
||||
| S4 | peer-reviewed original paper | *Multiplicative Updating of the Rotation Tensor in the Finite Element Analysis of Rods and Shells—A Path Independent Approach* | C. Sansour, W. Wagner | [institutional record](https://digital.library.adelaide.edu.au/items/e3451786-5c76-498e-a1cd-662e73db573f), DOI [`10.1007/s00466-002-0401-4`](https://doi.org/10.1007/s00466-002-0401-4) | Tier 2 | multiplicative update의 path-dependence 문제와 path-independent 접근. Cosserat-type rod/shell이며 FESA의 numerical drill potential을 정의하지 않음 |
|
||||
| S5 | peer-reviewed open-access review/original formulation | *A Consistent Finite Element Formulation of the Geometrically Non-linear Reissner–Mindlin Shell Model* | A. Müller, M. Bischoff | [Springer open access](https://doi.org/10.1007/s11831-021-09702-7); corrections [`10.1007/s11831-022-09725-8`](https://doi.org/10.1007/s11831-022-09725-8), [`10.1007/s11831-022-09832-6`](https://doi.org/10.1007/s11831-022-09832-6) | Tier 2 | director가 사는 nonlinear manifold, objective/path-independent interpolation, potential의 correct gradient/Hessian 필요성. CC BY 4.0; projection-based higher-order formulation은 FESA MITC4와 다름 |
|
||||
| S6 | peer-reviewed original paper | *The MITC4+ Shell Element in Geometric Nonlinear Analysis* | Y. Ko, P.-S. Lee, K.-J. Bathe | [MIT author PDF](https://web.mit.edu/kjb/www/Principal_Publications/The_MITC4%2B_shell_element_in_geometric_nonlinear_analysis.pdf), DOI [`10.1016/j.compstruc.2017.01.015`](https://doi.org/10.1016/j.compstruc.2017.01.015) | Tier 2 | TL/Green–Lagrange nonlinear MITC4+, quaternion triad update, `2x2x2` integration, analytical/FE benchmarks, distorted-mesh locking evidence. MITC4+는 assumed membrane field를 추가한 다른 element이며 graph-only target이 많음 |
|
||||
| S7 | official solver theory manual | [Nonlinear Solution Methods in Abaqus/Standard](https://docs.software.vt.edu/abaqusv2024/English/SIMACAETHERefMap/simathe-c-nonlinearsol.htm) | Dassault Systèmes | official 2024 documentation | Tier 1 | Newton Jacobian/residual/correction의 same-state 관계, full/modified/quasi-Newton 구분, residual+correction checks. Abaqus adaptive controls와 approximations는 P1이 배제하며 내부 동등성 근거가 아님 |
|
||||
| S8 | official solver benchmark | [3DNLG-1: Elastic Large Deflection Response of a Z-Shaped Cantilever Under an End Load](https://docs.software.vt.edu/abaqusv2025/English/SIMACAEBMKRefMap/simabmk-c-3dnlg1.htm) | Dassault Systèmes / NAFEMS attribution | official 2025 documentation; NAFEMS R0024 | Tier 1 | 공개 S4/S4R input 이름, 재료/BC/load, 세 load level의 tip displacement와 moment-at-A 표. 페이지가 NAFEMS 권고 문제를 재현하지만 source independence와 FESA subset 적합성은 별도 확인 필요 |
|
||||
| S9 | official solver benchmark | [3DNLG-9: Large Elastic Deflection of a Pinched Hemispherical Shell](https://docs.software.vt.edu/abaqusv2024/English/SIMACAEBMKRefMap/simabmk-c-3dnlg9.htm) | Dassault Systèmes / NAFEMS attribution | official 2024 documentation; NAFEMS R0024 | Tier 1 | 공개 S4/S4R input 이름, point-load/symmetry 조건, 세 load level의 A/B radial displacement 표. 공식 페이지가 NAFEMS 공개값이 Abaqus로 얻어졌음을 명시하므로 Abaqus와 NAFEMS 표의 비교는 독립 검증이 아님 |
|
||||
| S10 | official benchmark catalog | [Geometric Non-linearity benchmark catalog](https://www.nafems.org/publications/glossaryofbenchmarks/nonlinear/geometric/), [R0029 record](https://www.nafems.org/publications/resource_center/r0029/) | NAFEMS | publication `R0029` / summary `R0024` | Tier 1 | 3D beam/shell geometric-nonlinear benchmark inventory와 목적. exact R0029 report는 유료여서 이번 연구에서 전체 원문·독립 source tables를 확인하지 못함 |
|
||||
| S11 | official standard | *V&V 10-2019 (R2025), Standard for Verification and Validation in Computational Solid Mechanics* | ASME | [official record](https://www.asme.org/codes-standards/find-codes-standards/standard-for-verification-and-validation-in-computational-solid-mechanics) | Tier 1 | V&V/VVUQ 공통 framework와 용어. 유료 full standard 미열람이므로 분류 수준으로만 사용하고 세부 acceptance를 귀속하지 않음 |
|
||||
| S12 | government report | *Code Verification by the Method of Manufactured Solutions* | K. Salari, P. K. Knupp, Sandia National Laboratories | [Sandia record](https://www.sandia.gov/research/publications/details/code-verification-by-the-method-of-manufactured-solutions-2000-06-01/), DOI [`10.2172/759450`](https://doi.org/10.2172/759450), `SAND2000-1444` | Tier 1 | MMS가 order-of-accuracy에 영향을 주는 coding error를 탐지할 수 있다는 방법론과 blind tests. 예제는 주로 CFD이며 shell input/target을 제공하지 않음 |
|
||||
| S13 | peer-reviewed paper + reproducible artifact | *Method of Manufactured Solutions Code Verification of Elastostatic Solid Mechanics Problems in a Commercial Finite Element Solver* | K. I. Aycock, N. Rebelo, B. A. Craven | [publisher record](https://www.sciencedirect.com/science/article/pii/S0045794919301968), DOI [`10.1016/j.compstruc.2019.106175`](https://doi.org/10.1016/j.compstruc.2019.106175), artifact DOI [`10.6084/m9.figshare.7726352.v2`](https://doi.org/10.6084/m9.figshare.7726352.v2) | Tier 2 | elastostatic small/finite-strain MMS source-generation notebook와 input artifact. 3-D solid/body-source 및 다른 constitutive cases라 현재 MITC4/CLOAD/BOUNDARY subset에 직접 실행 불가 |
|
||||
| S14 | official solver verification guidance | [About Element Verification](https://docs.software.vt.edu/abaqusv2024/English/SIMACAEVERRefMap/simaver-c-basicelemover.htm) | Dassault Systèmes | official 2024 documentation | Tier 1 | patch test만으로 shell을 충분히 검증할 수 없고 geometric-nonlinear element에 constant-strain/rigid-rotation checks가 필요하다는 vendor verification 관행. FESA acceptance 수치나 내부 등가성은 제공하지 않음 |
|
||||
| S15 | configured FEM wiki navigation | `Nonlinear Finite Element Analysis`, `MITC4 Shell Element`, `MITC Shell Kinematics`, `Green-Lagrange Strain Linearization`, `Shell Locking Phenomenon`, `Shell Element Benchmark Testing`, `Scordelis-Lo Shell Benchmark` | MultiPhysicsVault | local `C:\git\MultiPhysicsVault\wiki\` | Tier 3 | source 탐색과 용어 연결에만 사용. 핵심 주장은 P1–P6 또는 S1–S14/S16–S17 원문으로 추적함 |
|
||||
| S16 | peer-reviewed benchmark paper + institutional postprint | *Popular Benchmark Problems for Geometric Nonlinear Analysis of Shells* | K. Y. Sze, X. H. Liu, S. H. Lo | [HKU institutional record and postprint](https://hub.hku.hk/handle/10722/54269), DOI [`10.1016/j.finel.2003.11.001`](https://doi.org/10.1016/j.finel.2003.11.001) | Tier 2 | eight benchmark sets의 geometry/load와 dense tabulated load–deflection data, mesh refinement 및 equal-increment difficulty evidence. CC BY-NC-ND institutional postprint; 값은 Abaqus S4R 계산이고 vendor Updated-Lagrangian/reduced-integration/hourglass/drill 및 automatic-control 결과이므로 FESA formulation이나 독립 reference와 동일시할 수 없음 |
|
||||
| S17 | official solver verification example | [Rigid Body Motion Output Variables](https://docs.software.vt.edu/abaqusv2024/English/SIMACAEVERRefMap/simaver-c-rigidbodymotoutput.htm) | Dassault Systèmes | official 2024 documentation | Tier 1 | `xrbmshel.inp`가 shell elements에 imposed 90-degree z-axis rigid rotation을 가하고 rigid-body output을 확인함. direct-integration implicit dynamics와 vendor whole-set output test라 FESA nonlinear-static strain/internal-force objectivity artifact가 아님 |
|
||||
|
||||
## 4. Extracted Facts and Theory Summary
|
||||
|
||||
### 4.1 Total Lagrangian four-node shell boundary
|
||||
|
||||
- **Verified fact — S1/S6:** Dvorkin–Bathe 계열의 continuum-based four-node shell은
|
||||
midsurface translation과 nodal director rotation으로 shell continuum를 나타내며,
|
||||
Total Lagrangian 기술에서 초기 configuration에 대한 Green–Lagrange strain 계열과 그에
|
||||
work-conjugate한 stress를 사용해 internal virtual work를 구성한다. S6는 이 계열을
|
||||
geometric nonlinear MITC4+로 전개하고 incremental Green–Lagrange strain을 residual/tangent
|
||||
계산에 사용한다.
|
||||
- **Project decision — P1:** FESA는 하나의 고정 초기 reference를 유지하고 homogeneous
|
||||
isotropic materially linear law만 허용한다. 따라서 material state/history 없이 geometry와
|
||||
rotation에서만 비선형성이 생겨야 한다.
|
||||
- **Inference:** Formulation은 동일 trial state에서 initial-reference geometry, current
|
||||
midsurface, current director/triad, strain, materially linear stress와 internal virtual work가
|
||||
연결되는 한 계통을 제시해야 한다. 정확한 strain components, plane-stress reduction,
|
||||
thickness assumption, stress/resultant recovery는 이 연구가 확정하지 않는다.
|
||||
- **Verified fact — S1/S6:** original MITC4의 assumed covariant transverse-shear interpolation은
|
||||
thin-shell shear locking을 줄이기 위한 핵심이다. S6의 nonlinear 계산은 네 node shell에
|
||||
`2 x 2 x 2` Gauss integration을 사용한다.
|
||||
- **Project decision — P5:** 기존 승인 linear FESA-MITC4도 source `S4/S4R` 모두 하나의
|
||||
`2 x 2` midsurface × two-point-thickness 경로와 동일 MITC shear tying을 쓴다. source label은
|
||||
Abaqus S4/S4R integration 선택자가 아니다.
|
||||
- **Inference:** 기존 rule을 nonlinear trial geometry에 그대로 “호출”하는 것만으로 consistent
|
||||
TL element가 되지 않는다. 각 quadrature/tying 위치의 reference/current frame, strain variation,
|
||||
stress-resultant와 geometry/map Hessian을 재유도해야 한다. `P5` §15는 이 필요사항의 목록이지
|
||||
승인된 해답이 아니다.
|
||||
- **Applicability fact — S1/S6:** 이 shell family의 large displacement/rotation 사용은 thin-to-thick
|
||||
Reissner–Mindlin-type kinematics와 small elastic strain 가정 안에서 해석해야 한다. materially
|
||||
linear law를 큰 material strain의 물리 모델로 일반화할 evidence는 없다.
|
||||
|
||||
### 4.2 Finite rotations, director and objectivity
|
||||
|
||||
- **Verified fact — S2/S3/S5:** finite rotation은 additive Euclidean vector가 아니며,
|
||||
configuration update, interpolation과 linearization은 rotation/director가 놓인 nonlinear
|
||||
manifold를 반영해야 한다. S2는 magnitude와 무관한 singularity-free director update와 exact
|
||||
discrete linearization을, S5는 objective/path-independent director interpolation과 correct
|
||||
potential gradient/Hessian의 필요성을 제시한다.
|
||||
- **Verified fact — S4:** rotation tensor를 단순히 multiplicative하게 누적한다는 사실만으로
|
||||
path independence가 자동 보장되지 않는다. update의 interpolation/parameterization과 state
|
||||
정의를 함께 검토해야 한다.
|
||||
- **Project decision — P1:** 각 node에는 committed/trial orthonormal right-handed triad `Q`가
|
||||
있고 director는 세 번째 축이다. correction은 dimensionless이며 update는 multiplicative다.
|
||||
- **Inference:** 적절한 proper-orthogonal incremental rotation을 곱하면 한 번의 연산은 triad의
|
||||
orthonormality와 handedness를 보존할 수 있다. 그러나 left/right multiplication, spatial/body
|
||||
increment convention, exponential/quaternion map, small-angle branch, accumulated chart의
|
||||
recentering과 derivative를 고정하지 않으면 residual/tangent/BC/moment가 유일해지지 않는다.
|
||||
- **Open issue O-ROT-01:** Formulation이 `Q_trial` update의 multiplication side, increment frame,
|
||||
retraction과 first/second directional derivative를 정해야 한다. 이것은 approved “multiplicative”
|
||||
의미를 구체화하되 global DOF/public input 의미를 바꾸어서는 안 된다.
|
||||
- **Open issue O-ROT-02:** nodal director/triad에서 Gauss/tying point director와 frame을 만드는
|
||||
objective interpolation, normalization derivative 및 degenerate/opposed director의 fail-closed
|
||||
조건이 아직 없다. S5의 특정 projection-based interpolation을 FESA가 채택한다고 추론하지 않는다.
|
||||
- **Inference:** objectivity는 단지 최종 `Q^T Q=I`, `det(Q)=+1` 검사와 다르다. initial/current
|
||||
geometry와 모든 triad에 같은 finite rigid motion을 superpose했을 때 physical strain/stress,
|
||||
internal energy와 equilibrium law가 적절히 invariant/covariant해야 한다.
|
||||
|
||||
### 4.3 Global 24 DOFs, drilling and nodal moments
|
||||
|
||||
- **Verified fact — S1:** original continuum-based four-node shell은 node당 두 director rotation을
|
||||
쓰는 five-physical-DOF element로 제시된다. director 축 주위 rotation은 original physical
|
||||
shell strain이 아니다.
|
||||
- **Project decision — P1/P5:** FESA public/global field는 node당 세 `UR`을 유지하고, 기존
|
||||
linear element는 director-tangent physical pair와 director-parallel numerical drill coordinate를
|
||||
분리한다. fixed small diagonal drill stabilization은 linear 계약에서만 승인되었다.
|
||||
- **Inference:** finite rotation에서 current director에 대한 “parallel/tangent” projection 자체가
|
||||
state-dependent하다. 그러므로 physical 20-coordinate residual을 global 24-coordinate correction에
|
||||
옮기는 map의 첫 미분뿐 아니라 map의 변화가 만드는 second-derivative/geometric term까지
|
||||
consistent tangent에 필요하다.
|
||||
- **Open issue O-DRILL-01:** objective nonlinear drilling potential, rotating reference, stiffness
|
||||
scale의 committed/trial 의존성, residual과 exact Hessian이 없다. linear diagonal을 current
|
||||
coordinates에 그대로 더하면 large rigid rotation에 artificial energy를 만들 수 있다는 것은
|
||||
**inference**이며, Formulation/Numerical Review가 potential 수준에서 판정해야 한다.
|
||||
- **Verified boundary — S4/S5:** path-independent/objective shell formulations 또는 physical
|
||||
Cosserat drilling rotation은 존재하지만, 그것은 FESA의 numerical drill regularization과 다른
|
||||
물리 모델이다. 이를 근거로 FESA drill을 physical strain/load channel로 바꿀 수 없다.
|
||||
- **Open issue O-MOM-01:** fixed-global dead nodal moment의 components는 P1이 고정하지만,
|
||||
multiplicative rotation correction과 work-conjugate generalized moment, virtual work, consistent
|
||||
derivative는 아직 없다. “follower-load tangent 없음”이 “rotation-map derivative도 없음”을
|
||||
뜻한다고 추론해서는 안 된다.
|
||||
- **Open issue O-DRILL-02:** current director와 평행한 applied moment의 거부/허용 projection이
|
||||
finite state에서 어떻게 평가되는지, physical moment work와 numerical drill을 어떻게 완전히
|
||||
분리하는지 downstream 계약이 필요하다.
|
||||
|
||||
### 4.4 Full Newton and same-trial consistent tangent
|
||||
|
||||
- **Verified fact — S7:** Newton linearization은 현재 iterate에서 평가한 equilibrium residual과
|
||||
그 residual의 Jacobian을 같은 state에서 사용한다. full Newton은 매 iteration Jacobian을 다시
|
||||
형성하고 푸는 방법이며, residual과 correction을 함께 작게 확인하는 것이 일반적이다.
|
||||
- **Project decision — P1:** FESA는 residual과 algorithmically consistent tangent를 같은 trial
|
||||
identity에서 평가하고, entered iteration마다 fresh factorization/solve를 하며, correction을
|
||||
변경 없이 적용한다. iteration `1..100`, fixed increments, no line search/damping/cutback/retry다.
|
||||
- **Inference:** “material tangent + geometric stiffness”라는 이름의 합만으로 consistency가
|
||||
입증되지 않는다. 선택한 rotation retraction 아래에서 physical internal force, state-dependent
|
||||
24/20 map, drilling potential, prescribed-DOF elimination과 external work를 모두 방향미분한 결과가
|
||||
assembled residual의 Jacobian과 일치해야 한다.
|
||||
- **Inference:** fixed-global translational dead force의 magnitude/direction은 displacement와 무관하므로
|
||||
translation virtual-work 표현이 additive global translation이면 그 load contribution은 configuration
|
||||
derivative를 만들지 않는다. 이 결론은 nodal moment나 prescribed finite rotation에 자동 확장되지
|
||||
않는다.
|
||||
- **Inference / verification consequence — S7/P1:** deterministic directional-derivative test에서 동일 trial state와 동일
|
||||
rotation retraction을 사용해 `K p`를 centered residual difference와 비교해야 한다. perturbation을
|
||||
한 값으로 고정해 우연한 cancellation을 통과시키지 말고 truncation/roundoff plateau를 확인하되,
|
||||
perturbation grid와 tolerance는 Numerical Review가 정한다.
|
||||
- **Inference / symmetry boundary — S5/P1:** materially linear conservative internal potential과 conservative numerical
|
||||
drilling potential을 정확히 두 번 미분한 적절한 coordinate Hessian은 symmetry 후보가 된다.
|
||||
그러나 nodal moment work, rotation coordinate choice와 constraint reduction이 미정이므로 complete
|
||||
global tangent symmetry를 이 연구에서 요구사항 이상으로 확정하지 않는다.
|
||||
|
||||
### 4.5 Proportional loads and prescribed paths
|
||||
|
||||
- **Project decision — P1:** 모든 approved `CLOAD`와 nonzero `BOUNDARY`는 step-start에서 factor-one
|
||||
target까지 같은 scalar factor를 쓰고, factor는 fixed positive increment와 마지막 shortening만으로
|
||||
정확히 1에 도달한다. `CLOAD` force/moment는 global direction이 고정된 dead load다.
|
||||
- **Project decision — P1:** prescribed value는 factor-one absolute global-DOF target이며 Newton
|
||||
correction과 다르다. constrained component는 convergence norm에서 빠지지만 complete assembled
|
||||
residual의 constrained entry는 reaction 의미를 가진다.
|
||||
- **Open issue O-BC-01:** finite rotational `BOUNDARY` target을 `Q_start`에 상대적인 rotation vector로
|
||||
해석하는지, `Q(lambda)`를 어떤 retraction/side로 구성하는지, constrained correction과 target
|
||||
mismatch를 어떤 coordinate에서 계산하는지 Formulation이 정해야 한다.
|
||||
- **Inference:** Cartesian nodal positions를 `X + lambda (R-I)X`로 선형 보간하는 prescribed path는
|
||||
일반적으로 중간 `lambda`에서 exact rigid rotation 궤적이 아니다. 따라서 finite rigid-body
|
||||
objectivity test를 단순 proportional displacement BC로 만들면 중간 상태에 strain이 생길 수 있다.
|
||||
operator-level superposition test 또는 처음부터 rigidly transformed 된 두 독립 모델의 covariance
|
||||
비교가 더 직접적인 후보이며, exact rigid prescribed path를 새 public 의미로 추가하면 scope change다.
|
||||
- **Inference / applicability consequence — P1:** limit point, snap-through/post-buckling branch, follower pressure와
|
||||
non-proportional control이 필요한 benchmark는 첫 release의 acceptance 후보가 아니다. fixed-load
|
||||
increment가 Newton attraction radius 밖이면 deterministic failure가 맞으며, automatic cutback을
|
||||
기대할 수 없다.
|
||||
|
||||
### 4.6 Locking, integration and geometry risks
|
||||
|
||||
- **Verified fact — S6:** original MITC4는 transverse shear를 MITC 방식으로 처리하지만 membrane
|
||||
strain을 MITC4+처럼 보강하지 않는다. curved 또는 response 중 distorted mesh에서는 membrane
|
||||
locking으로 load–displacement accuracy가 크게 저하될 수 있다.
|
||||
- **Project decision — P5:** FESA `S4`와 `S4R`는 같은 original-style MITC4 path다. Abaqus S4/S4R의
|
||||
full/reduced integration, hourglass, membrane enhancement 또는 stabilization 차이를 상속하지 않는다.
|
||||
- **Inference:** `2x2x2` common rule은 S1/S6 및 linear FESA와 연결되는 강한 candidate지만,
|
||||
nonlinear strain/tangent의 각 항을 어느 위치에서 적분할지는 Formulation이 source 식으로
|
||||
확인해야 한다. one-point reduction/hourglass control을 source `S4R` 때문에 도입할 근거는 없다.
|
||||
- **Verified risk / inference — S6/P5:** thin/slender geometry, curved/distorted quads, nearly degenerate positive Jacobian과 작은
|
||||
drill scale은 locking 또는 conditioning을 악화할 수 있다. current trial geometry가 심하게
|
||||
변형되어도 TL reference mapping과 current frame/director 모두 각 required Gauss/tying/recovery
|
||||
위치에서 finite/valid해야 한다.
|
||||
- **Inference / verification consequence — S6/P1:** regular/distorted, thickness/radius 또는 thickness/length sequence를
|
||||
함께 보고, 단일 point response가 맞는 것만으로 locking-free를 주장하지 않는다. MITC4+
|
||||
convergence를 original FESA-MITC4 acceptance target으로 사용하지 않는다.
|
||||
|
||||
### 4.7 Equilibrium, reactions and transactional state
|
||||
|
||||
- **Project decision — P1/P3:** full assembled equilibrium at a trial/accepted state gives free-DOF
|
||||
residual and constrained reaction. stable source/component identity와 deterministic assembly/reduction
|
||||
order를 보존해야 한다.
|
||||
- **Inference:** accepted state 검증은 free residual norm만이 아니라 fixed-global resultant force와
|
||||
moment balance를 함께 확인해야 한다. global moment balance는 한 fixed origin에 대한 nodal-force
|
||||
moment, nodal couple와 reactions를 모두 포함해야 하며 exact sign/identity는 Formulation/Numerical
|
||||
Review가 정한다.
|
||||
- **Project decision — P1/P3:** trial state와 output candidate는 완전히 검증된 뒤 atomic commit된다.
|
||||
failure는 prior committed state와 prior authoritative HDF5를 보존하고 current-run live log는 남긴다.
|
||||
- **Inference / verification consequence — P1/P3:** nonconvergence, nonfinite state/recovery, factorization/solve failure와
|
||||
output-finalization failure를 서로 다른 injected failure point로 시험해야 한다. 성공 increment만
|
||||
frame과 일대일이어야 하며 trial rotation/director가 committed state를 alias하면 안 된다.
|
||||
|
||||
## 5. Candidate Benchmarks and Artifact Readiness
|
||||
|
||||
후보 우선순위는 `A`(required portfolio의 직접 후보), `B`(외부 solution/reference candidate),
|
||||
`C`(known-limit characterization 또는 future method)이다. 아래 수치나 source table은 아직 FESA
|
||||
acceptance target/tolerance로 승인된 것이 아니다.
|
||||
|
||||
### B-01 — Small-displacement linear limit (`A`)
|
||||
|
||||
- **Exact candidate artifact:** 현재 read-only `reference/shell/shell.inp`,
|
||||
`reference/shell/shell displacements.csv`, `shell reactions.csv`, `shell stresses.csv`; 별도로
|
||||
`reference/shellR/shellR.inp`와 대응 CSV가 존재한다. 두 input 모두 `*Step, nlgeom=NO`다.
|
||||
- **Artifact gap:** 동일 source identity와 supported four-value nonlinear `STATIC`을 사용하는
|
||||
approved `nlgeom=YES` input 및 nonlinear accepted-frame CSV는 없다. 기존 pair를 rename/rewrite하거나
|
||||
nonlinear reference라고 재분류해서는 안 된다.
|
||||
- **Target quantities:** 충분히 작은 response에서 accepted factor-one global `U`, physical rotation/director,
|
||||
reaction, physical strain/stress/resultant의 linear procedure/baseline 접근; geometric part가 사라지는
|
||||
tangent limit; source-row identity.
|
||||
- **Cannot verify:** finite rotation, nonlinear load–displacement path, nonlinear convergence, objective
|
||||
drilling, rollback 또는 Abaqus nonlinear agreement.
|
||||
- **Assumptions/limits:** existing center deflection scale이 geometry에 비해 작은지는 model length와
|
||||
dimensionless ratio로 다시 확인해야 한다. `shellR` artifact 존재는 FESA reduced integration 또는
|
||||
nonlinear readiness 근거가 아니다.
|
||||
- **Numerical Review questions:** nonlinear variant를 test-owned input으로 승인할지; 어느 linear
|
||||
HDF5/CSV quantities를 baseline으로 삼을지; geometric perturbation 크기와 case-specific limit
|
||||
tolerance는 무엇인지; external comparison이 아니라 cross-procedure regression으로 분류할지.
|
||||
|
||||
### B-02 — Element patch and constant-state continuation (`A`)
|
||||
|
||||
- **Exact candidate artifact/gap:** 기존 exact linear unit-test concepts는
|
||||
`tests/unit/elements/mitc4_shell_test.cpp`의 membrane/bending/shear/twist/rigid tests다. finite-state
|
||||
patch input/expected data artifact는 없음.
|
||||
- **Target quantities:** constant membrane/bending/shear states의 nodal residual, strain/stress/resultant,
|
||||
patch interface equilibrium; zero-increment state에서 linear test로의 reduction; regular/rotated/distorted
|
||||
mesh에서 component/sign covariance.
|
||||
- **Cannot verify:** global Newton lifecycle, full large-deflection accuracy, curved-shell membrane locking,
|
||||
external reference agreement.
|
||||
- **Assumptions/limits:** analytical state가 chosen nonlinear shell kinematics에 정확히 representable한지
|
||||
Formulation derivation 후 확인해야 한다. all-constrained manufactured state는 solver convergence를
|
||||
exercise하지 않는다.
|
||||
- **Numerical Review questions:** 어떤 exact states가 admissible한지, drill coordinate를 어떻게 zero로
|
||||
유지할지, element vs assembly blocking 분할과 invariant tolerance.
|
||||
|
||||
### B-03 — Tangent directional derivative (`A`)
|
||||
|
||||
- **Exact candidate artifact/gap:** external artifact 없음. Formulation이 정한 retraction을 쓰는
|
||||
deterministic generated trial-state test가 필요하다.
|
||||
- **Target quantities:** 여러 regular/distorted elements와 assembled patch에서 translation/rotation
|
||||
direction `p`에 대한 complete residual difference와 `K_T p`; material, geometric, 24/20-map,
|
||||
drilling, load-work contribution을 선택적으로 isolate한 error trend.
|
||||
- **Cannot verify:** 물리 solution accuracy, mesh convergence 또는 benchmark response.
|
||||
- **Assumptions/limits:** centered difference의 두 perturbed states가 같은 committed base와 load factor를
|
||||
공유해야 한다. finite-difference noise 때문에 한 epsilon의 absolute comparison은 부적절하다.
|
||||
- **Numerical Review questions:** perturbation schedule, norm/scaling, expected asymptotic region과 blocking
|
||||
tolerance; constrained DOF와 nodal-moment case 포함 여부; complete tangent symmetry의 expected status.
|
||||
|
||||
### B-04 — Finite rigid superposition/objectivity and triad invariants (`A`)
|
||||
|
||||
- **Exact candidate artifact/gap:** S17 public Abaqus verification에는 shell rigid-body-motion input
|
||||
`xrbmshel.inp`가 있으나 local stored artifact가 없고 FESA subset/목적이 일치하지 않는다.
|
||||
S17은 direct-integration implicit-dynamic rigid-body output test이지 nonlinear-static physical
|
||||
strain/internal-force objectivity test가 아니다.
|
||||
FESA operator-level superposition case도 아직 없음.
|
||||
- **Target quantities:** arbitrary proper rigid rotation과 translation을 initial/current geometry 및 nodal
|
||||
triads에 superpose하기 전후 physical strain/stress/energy invariance, internal force/tangent covariance,
|
||||
`Q^T Q`, `det(Q)`, director-third-axis identity; rigid state의 zero physical residual.
|
||||
- **Cannot verify:** deformational accuracy, nonlinear load path, reaction sign 또는 external solver agreement.
|
||||
- **Assumptions/limits:** proportional Cartesian BC는 exact rigid intermediate path가 아니므로 사용하지
|
||||
않는다. numerical drill이 physical rigid motion에 energy를 만들지 않는 map이 먼저 정의되어야 한다.
|
||||
- **Numerical Review questions:** state-level 또는 solved-model covariance 중 무엇을 blocking할지;
|
||||
rotation magnitudes/axes, force/tangent transform와 invariant tolerances; drill residual을 physical
|
||||
residual과 어떻게 분리할지.
|
||||
|
||||
### B-05 — Equilibrium/reaction and symmetry pair (`A`)
|
||||
|
||||
- **Exact candidate artifact/gap:** exact local nonlinear input/expected rows 없음. one-element/patch와
|
||||
mirrored multi-element model을 새 test-owned candidate로 정의해야 한다.
|
||||
- **Target quantities:** accepted free residual, constrained reaction, global resultant force/moment balance;
|
||||
mirrored node/source mapping 아래 displacement, triad/director, reactions와 physical output의 parity;
|
||||
deterministic row/order identity.
|
||||
- **Cannot verify:** absolute large-deflection accuracy 또는 tangent consistency 단독.
|
||||
- **Assumptions/limits:** mirror는 orientation/connectivity와 pseudovector moment/rotation 변환을 올바르게
|
||||
다뤄야 한다. 단순 component equality가 아니라 signed mapped equality가 필요하다.
|
||||
- **Numerical Review questions:** fixed balance origin, nodal couple 포함식, blocking quantities/tolerances,
|
||||
mirror connectivity rule, symmetry와 objectivity 중 요구조건의 최소 blocking 조합.
|
||||
|
||||
### B-06 — Commit/rollback and deterministic event sequence (`A`)
|
||||
|
||||
- **Exact candidate artifact/gap:** external physics artifact는 필요하지 않다. repository에는 nonlinear
|
||||
transactional-state failure harness가 아직 없다.
|
||||
- **Target quantities:** success 시 committed state/load factor/frame의 bijection; iteration-100 pass/fail
|
||||
boundary; nonconvergence, nonfinite residual/tangent/correction/recovery, factorization/solve 및 HDF5
|
||||
finalization failure 후 prior displacement/triad/director/reaction/recovery/final HDF5 보존; live log의
|
||||
entered-iteration cardinality; repeated/thread configurations의 stable event/order.
|
||||
- **Cannot verify:** shell physical accuracy나 external reference agreement.
|
||||
- **Assumptions/limits:** failure injection은 production semantics를 바꾸지 않는 test seam이어야 한다.
|
||||
- **Numerical Review questions:** floating reproducibility 수준, state snapshot 비교량, output failure를
|
||||
commit 전 어느 validation boundary에 둘지, incomplete current increment가 log에 남길 최소 evidence.
|
||||
|
||||
### B-07F — End-shear cantilever with dense tabulated path (`A/B`)
|
||||
|
||||
- **Exact candidate artifact:** S16 §3.1/Table 2a/Fig. 2의 public institutional postprint.
|
||||
`E=1.2e6`, `nu=0`, `L=10`, `b=1`, `h=0.1`, `P0=EI/L^2=1`, `Pmax=4P0`와
|
||||
`16 x 1` S4R model의 40 equal increments에서 horizontal/vertical tip deflections를
|
||||
`P/Pmax=0.05..1.00`에 tabulate한다.
|
||||
- **Artifact gap:** machine-readable nodes/elements, exact nodal force distribution, `.inp`와 stored
|
||||
FESA/reference CSV가 없다.
|
||||
- **Target quantities:** Table 2a의 signed `Utip/Wtip` path, tip force factor, root reactions,
|
||||
current geometry/director와 Newton iteration identity. Point dead force라 O-MOM-01을 기다리지 않는
|
||||
large-rotation global-solve 후보다.
|
||||
- **Cannot verify:** curved-shell membrane locking, nodal moment work, tangent derivative, objectivity 또는
|
||||
rollback 단독. S16 값은 Abaqus S4R 결과이며 독립 analytical solution이 아니다.
|
||||
- **Assumptions/limits:** paper의 S4R는 FESA와 다른 Updated-Lagrangian/reduced-integration/hourglass/drill
|
||||
model이다. equality는 오직 동일 physical quantity의 external numerical comparison 후보이며 internal
|
||||
compatibility를 뜻하지 않는다. 논문의 default automatic NINC/NITER가 아니라 Table 2a 생성에 쓴
|
||||
equal `NINC*=40` path만 first-release fixed-step 후보와 가까운 evidence다.
|
||||
- **Numerical Review questions:** postprint geometry에서 exact mesh/connectivity/load distribution을
|
||||
재구성해도 benchmark identity를 보존하는가; Table 2a 어느 rows/components를 blocking할지;
|
||||
FESA fixed Full Newton/no-line-search에서 40 increments가 traversable한지; stored artifact provenance와
|
||||
`docs/TOLERANCE.md` family를 어떻게 정할지.
|
||||
|
||||
### B-07M — Pure-moment cantilever to a circular arc/full circle, MES (`A/B`)
|
||||
|
||||
- **Exact candidate artifact:** S6 §3.1/Fig. 5–7/Eq. (27)의 `16 x 1` MITC4/MITC4+ cantilever와
|
||||
analytical circular-arc solution. S16 §3.2/Table 3a/Fig. 3은 `E=1.2e6`, `nu=0`, `L=12`,
|
||||
`b=1`, `h=0.1`, `Mmax=2*pi*EI/L`과 `M/Mmax=0.05..1.00`의 analytical 및 S4R tip
|
||||
deflections를 tabulate한다.
|
||||
- **Artifact gap:** machine-readable node/element/input, exact nodal moment distribution과 stored CSV가
|
||||
없다. FESA-approved CLOAD nodal-moment work가 아직 미정이다.
|
||||
- **Target quantities:** published analytical tip-displacement functions, final circular geometry/director,
|
||||
load-factor path, root reactions, Newton iterations, objectivity under a superposed rigid transform.
|
||||
- **Cannot verify:** point-force behavior, curved initial geometry, membrane-locking performance,
|
||||
Abaqus agreement, numerical drilling accuracy.
|
||||
- **Assumptions/limits:** thin strip가 beam analytical assumptions에 충분히 접근하는 mesh/thickness가
|
||||
필요하고, tip moment를 node들에 배분하면 analytical end resultant와 work-equivalent해야 한다.
|
||||
S16의 dense S4R columns는 analytical columns의 보조 convergence evidence이지 FESA internal-equivalence
|
||||
target이 아니다. S16은 equal `NINC*=80`을 썼으며 default automatic increment counts는 FESA
|
||||
fixed-step behavior의 acceptance evidence가 아니다.
|
||||
- **Numerical Review questions:** finite-rotation nodal-moment work가 확정되기 전 blocking 가능한가;
|
||||
exact geometry/mesh/section/load distribution과 analytical quantity projection; full-circle state를
|
||||
fixed-step/no-cutback Full Newton으로 안전하게 도달시킬 increment와 tolerance.
|
||||
|
||||
### B-08 — NAFEMS 3DNLG-1 Z-shaped cantilever (`B`)
|
||||
|
||||
- **Exact public candidate artifact:** S8의 `n3g1x33x_s4.inp`와 `n3g1x33x_s4r.inp`.
|
||||
페이지는 `t=1.7`, `E=2.0e5`, `nu=0.3`, built-in end, concentrated `P=4000`, `1 x 72`
|
||||
S4/S4R mesh와 source tables를 명시한다. local stored artifact/CSV는 없음.
|
||||
- **Target quantities:** load `104.5`, `1263.0`, `4000.0`에서 tip displacement 및 section A moment;
|
||||
accepted path, root reactions, mesh/source identity.
|
||||
- **Cannot verify:** curved-shell or distorted-mesh membrane locking, pure rigid objectivity, tangent derivative,
|
||||
rollback. source S4 result 일치는 formulation/integration/stabilization equivalence를 뜻하지 않는다.
|
||||
- **Assumptions/limits:** public input의 keyword, node/element orientation, output/moment definition을 FESA
|
||||
subset과 대조해야 한다. NAFEMS original R0029의 independent-source details는 paywall gap이다.
|
||||
- **Numerical Review questions:** exact public input을 그대로 지원할 수 있는지 또는 adaptation이
|
||||
필요한지; moment-at-A를 FESA authoritative output에서 동일 quantity/frame으로 얻을 수 있는지;
|
||||
source table 중 independent target을 식별할 수 있는지; 어떤 quantities가 blocking/warning인지.
|
||||
|
||||
### B-09 — NAFEMS 3DNLG-9 pinched hemisphere (`B`)
|
||||
|
||||
- **Exact public candidate artifact:** S9의 S4 `n3g9xe4x.inp`, S4R `n3g9xf4x.inp`.
|
||||
page는 `E=6.825e7`, `nu=0.3`, symmetry constraints, diametrical inward/outward point load
|
||||
`P=100`과 source tables를 제공한다. S16 §3.4/Table 5a는 closely related hemisphere의
|
||||
`P/Pmax=0.05..1.00` dense A/B displacement table을 제공한다. local stored artifact/CSV는 없음.
|
||||
- **Target quantities:** `P=40,60,100`에서 points A/B radial displacement, load–displacement path,
|
||||
symmetry, reactions와 curved-shell mesh trend.
|
||||
- **Cannot verify:** independent Abaqus verification—S9 자체가 NAFEMS published values가 Abaqus로
|
||||
얻어졌다고 경고한다—또는 tangent/rollback/pure moment work.
|
||||
- **Assumptions/limits:** symmetry shorthand, spherical geometry/directors, exact node identity와 radial
|
||||
projection이 supported subset에 맞아야 한다. original MITC4의 membrane-locking 위험 때문에
|
||||
MITC4+ 또는 higher-order 결과 수준을 기대해서는 안 된다. S16 dense values 역시 Abaqus S4R로
|
||||
계산되었으므로 independent-source gap을 닫지 않는다.
|
||||
- **Numerical Review questions:** R0029의 other-source 결과를 합법적으로 확인할 수 있는지;
|
||||
exact public deck subset compatibility; regular/distorted/mesh sequence와 target rows; known-locking
|
||||
limitation을 acceptance와 characterization 중 어디에 둘지.
|
||||
|
||||
### B-10 — Original-MITC4 locking/distortion characterization (`C`)
|
||||
|
||||
- **Exact candidate artifact:** S6 Fig. 14–16의 cylindrical shell bending geometry와
|
||||
`a/R=1/100, 1/1000, 1/10000`, regular/distorted `12 x 12` meshes; Fig. 17–20의 hemispherical
|
||||
shell, regular/distorted `8 x 8`, `12 x 12` meshes. 논문 PDF의 geometry/material/load 설명은 공개다.
|
||||
- **Artifact gap:** machine-readable inputs/curves가 없고 fine MITC9 reference는 논문 graph뿐이다.
|
||||
cylindrical case의 distributed edge moment는 현재 input scope와 맞지 않는다.
|
||||
- **Target quantities:** thickness와 distortion에 따른 displacement-curve trend, rank/conditioning,
|
||||
original MITC4와 reference curve의 qualitative separation.
|
||||
- **Cannot verify:** exact blocking reference comparison, FESA MITC4+ behavior, current input-path acceptance.
|
||||
- **Assumptions/limits:** characterization-only. S6는 original MITC4가 thin distorted cases와 일부
|
||||
large-response meshes에서 membrane lock함을 보여 주므로 실패 경향을 숨기지 않는다.
|
||||
- **Numerical Review questions:** point-load-compatible hemisphere만 optional study로 남길지; graph
|
||||
digitization을 금지하고 qualitative known limitation으로만 쓸지; performance adequacy의 최소 범위.
|
||||
|
||||
### B-11 — Shell MMS / exact-solution expansion (`C`)
|
||||
|
||||
- **Exact public candidate artifact:** S13의 Figshare source-term notebook와 solid-mechanics examples.
|
||||
- **Artifact gap:** FESA TL MITC4 shell kinematics에 대한 manufactured midsurface/director field,
|
||||
compatible nodal CLOAD/BOUNDARY-only source, analytical resultants와 convergence data가 없다.
|
||||
- **Target quantities:** 향후 shell-specific MMS를 만들 경우 spatial order, residual/source balance,
|
||||
strain/stress/resultant error norms와 mesh refinement rate. 현재는 B-07M analytical circle을 MES
|
||||
(method of exact solutions) 후보로 우선한다.
|
||||
- **Cannot verify:** current feature를 그대로 실행할 수 없음; S13의 3-D body source와 material cases는
|
||||
current input/material scope 밖이다.
|
||||
- **Assumptions/limits:** shell MMS를 위해 distributed/body source 또는 새로운 BC meaning을 추가하면
|
||||
approved scope change다. all-boundary prescribed manufactured state는 global nonlinear solve를 충분히
|
||||
exercise하지 않는다.
|
||||
- **Numerical Review questions:** current release에서 MMS를 nonblocking gap으로 둘지; nodal-load-only
|
||||
admissible exact state를 유도할 수 있는지; spatial convergence study가 acceptance에 필요한지.
|
||||
|
||||
## 6. Verification Relevance
|
||||
|
||||
| evidence class | candidates | 검증하는 것 | 검증하지 못하는 것 |
|
||||
| --- | --- | --- | --- |
|
||||
| code verification | B-01, B-02, B-03, B-04, B-05, B-06 | linearization, coordinate map, objectivity/covariance, equilibrium/reaction, state lifecycle, deterministic order | 실제 구조물의 물리 validity 전부 |
|
||||
| exact/MES comparison | B-07M | large-rotation kinematics, moment work, analytical response path | general curved shell, point force, drilling accuracy |
|
||||
| solution verification / benchmark comparison | B-07F, B-08, B-09 | assembled nonlinear response, path, curvature, nodal dead load, mesh behavior | 내부 formulation equivalence, tangent consistency, rollback |
|
||||
| known-limit characterization | B-10 | original MITC4 membrane-locking/distortion sensitivity를 드러냄 | blocking exact target 또는 MITC4+ 성능 |
|
||||
| MMS method candidate | B-11 | 향후 equation/source implementation과 spatial order | current input scope에서 즉시 실행 가능한 gate |
|
||||
| reference comparison | Stage-4에서 승인할 stored nonlinear input/CSV | stable source/component mapping과 `docs/TOLERANCE.md` gate | formulation identity, objectivity, state integrity |
|
||||
| validation | 현재 exact candidate 없음 | — | experimental reality agreement. 이번 release gate를 verification과 validation으로 혼동하지 않음 |
|
||||
|
||||
한 benchmark의 nodal displacement 일치로 전체 기능을 승인해서는 안 된다. 최소 blocking portfolio는
|
||||
B-01~B-06의 독립 invariant/software checks와, point-dead-load B-07F 또는 exact subset이 확인된
|
||||
B-08/B-09 중 적어도 하나의 large-response problem을 조합하는 방향이 타당하다. O-MOM-01 해소
|
||||
후 analytical B-07M을 추가하면 finite-moment work evidence가 강화된다. 이는
|
||||
**research recommendation**이며 exact blocking set과 tolerance는 Numerical Review 소유다.
|
||||
|
||||
## 7. Applicability Limits
|
||||
|
||||
| axis | applicable | not established / excluded |
|
||||
| --- | --- | --- |
|
||||
| nonlinearity | fixed-reference Total Lagrangian geometric nonlinearity | Updated Lagrangian, corotational, material nonlinearity, finite-strain constitutive validation |
|
||||
| element | four-node FESA-MITC4 mapping for source S4/S4R; Reissner–Mindlin-type director shell | MITC4+, MITC9, physical drilling/MITC4-D, continuum-shell 또는 Abaqus S4/S4R internal behavior |
|
||||
| material/section | homogeneous isotropic materially linear shell; user-consistent units | composite, plasticity, hyperelasticity, thickness stretch/material history |
|
||||
| kinematics | large displacement/finite rotation with small elastic strain applicability | singular/degenerate director interpolation, sharp folds/intersections/hinges without separate evidence |
|
||||
| loads | proportional fixed-global nodal force and moment; prescribed global targets | follower pressure/force, distributed/body/edge load, non-proportional path, arc-length/control displacement |
|
||||
| solver path | fixed increments, Full Newton, fresh tangent/solve, no correction modification | modified/quasi-Newton, line search, damping, adaptive growth/cutback/retry, limit-point traversal guarantee |
|
||||
| integration | source-backed `2x2x2` candidate and existing FESA common S4/S4R convention | source-label-selected Abaqus integration, one-point reduction/hourglass or undocumented selective integration |
|
||||
| locking | transverse-shear MITC mitigation | general locking-free claim; distorted curved original MITC4 has membrane-locking risk |
|
||||
| outputs/reference | accepted committed states; exact stable source/component matching after Stage-4 contract | trial HDF5 history, vendor internal variables, inferred units/coordinates, artifact row averaging/normalization |
|
||||
| verification | analytical/invariant/patch/benchmark/software-failure portfolio | one-value validation claim, automatic Abaqus/Midas equivalence, current linear artifacts as nonlinear reference |
|
||||
|
||||
## 8. Open Issues and Source Disagreements
|
||||
|
||||
| id | type | issue / conflict | downstream acceptance question |
|
||||
| --- | --- | --- | --- |
|
||||
| O-ROT-01 | formulation | multiplicative side/frame/retraction, accumulated chart/recentering과 first/second derivative 미정 | Formulation이 하나의 objective state/update convention을 완전 선형화할 수 있는가? |
|
||||
| O-ROT-02 | formulation/numerical | nodal triad/director의 Gauss/tying interpolation과 normalization derivative 미정 | opposed/degenerate director validation 및 objectivity test가 무엇인가? |
|
||||
| O-MAP-01 | formulation | nonlinear `24 global -> 20 physical + 4 drill` map과 map Hessian 미정 | complete global residual/tangent가 directional-derivative gate를 통과하는가? |
|
||||
| O-DRILL-01 | formulation/numerical | objective drilling potential, scale/state dependence와 exact Hessian 미정 | six physical rigid modes를 보존하며 pure drill만 regularize하는가? |
|
||||
| O-DRILL-02 | formulation/numerical | finite state에서 director-parallel applied moment의 판정과 physical moment/numerical drill 분리 미정 | drilling-direction load가 physical work나 stabilization에 섞이지 않고 결정적으로 거부되는가? |
|
||||
| O-MOM-01 | formulation | fixed-spatial nodal moment의 multiplicative rotation work/conjugacy 미정 | no-follower 계약을 지키면서 residual/tangent와 B-07M을 정의할 수 있는가? |
|
||||
| O-BC-01 | formulation/numerical | absolute prescribed finite rotation의 factor path와 constrained correction 좌표 미정 | factor endpoints, intermediate `Q`, reaction work와 rollback identity가 유일한가? |
|
||||
| O-SYM-01 | numerical | complete tangent symmetry가 conservative internal/drill/moment 선택 후에야 판정 가능 | symmetry를 blocking invariant로 둘지, 어떤 scaled norm을 쓸지? |
|
||||
| O-REF-01 | reference readiness | exact stored nonlinear `.inp`/CSV가 repository에 없음 | B-08 또는 B-09의 exact deck/rows를 합법적으로 저장·승인할지, 아니면 다른 artifact를 선택할지? |
|
||||
| O-REF-02 | source access | NAFEMS R0029 full report는 paid/private; 공개 Abaqus 3DNLG-9 값은 독립 NAFEMS evidence가 아님 | independent target/provenance를 추가 확보할 수 있는가? 확보 못하면 claim을 어떻게 제한할지? |
|
||||
| O-TOL-01 | numerical | tangent, objectivity, `Q` invariant, balance, symmetry, endpoint arithmetic tolerance 미정 | scale-aware case-specific gate를 Stage-4 전에 모두 고정할 수 있는가? |
|
||||
| O-BENCH-01 | scope/numerical | B-07F는 exact deck 부재/vendor-result 경계, B-07M은 nodal moment work, B-09는 curved locking/subset, B-08은 moment output identity gap이 있음 | large-response blocking benchmark를 어떤 exact artifact/quantity로 선택할지? |
|
||||
| O-STEP-01 | numerical | no-cutback Full Newton이 published benchmark load intervals에서 수렴한다는 evidence 없음 | fixed increment를 benchmark마다 어떻게 정하고, deterministic nonconvergence와 formulation failure를 구분할지? |
|
||||
| O-MMS-01 | method | public MMS artifact는 3-D solid/body-source이고 shell/CLOAD subset과 불일치 | first release에서 nonblocking으로 남길지, scope-preserving exact nodal-load case가 가능한지? |
|
||||
|
||||
명시적 source disagreement/비교 경계는 다음과 같다.
|
||||
|
||||
1. S1/S6의 nonlinear shell은 node당 five physical DOFs를 쓰지만 P1은 six global DOFs와
|
||||
numerical drill을 요구한다. 이 차이는 구현 detail이 아니라 O-MAP-01/O-DRILL-01의 정식화 gap이다.
|
||||
2. S6의 MITC4+는 membrane assumed strain을 추가하고 original MITC4보다 distorted nonlinear
|
||||
mesh에서 더 좋은 결과를 보인다. FESA는 original-style MITC4이므로 그 성능을 상속하지 않는다.
|
||||
3. Abaqus S4와 S4R의 공개 결과/inputs는 benchmark evidence 후보지만 FESA source mapping과
|
||||
Abaqus integration, stabilization, rotation 또는 output recovery의 동일성을 뜻하지 않는다.
|
||||
4. S7의 Abaqus production algorithm에는 adaptive cutback 등 P1이 의도적으로 제외한 control이
|
||||
있다. Newton의 일반 same-state Jacobian evidence만 사용하며 runtime-control 동등성을 주장하지 않는다.
|
||||
|
||||
## 9. Downstream Handoff
|
||||
|
||||
### 9.1 Formulation Agent에 전달할 evidence와 미결정
|
||||
|
||||
1. S1/S6을 출발점으로 fixed-initial-reference TL shell의 kinematic/virtual-work 계통을 다시
|
||||
유도하되, materially linear law와 existing physical MITC shear/`2x2x2` boundary만 보존한다.
|
||||
2. S2–S5를 근거로 committed/trial `Q`, director, chosen multiplicative retraction, interpolation,
|
||||
first/second variation을 하나의 objective/path-defined convention으로 제시한다.
|
||||
3. O-MAP-01의 exact global 24-DOF residual/tangent와 state-dependent map Hessian을 완성한다.
|
||||
`docs/linear-static-mitc4-shell/formulation.md` §15는 gap inventory로만 사용한다.
|
||||
4. O-DRILL-01/O-DRILL-02의 objective numerical drilling potential과 exact residual/Hessian,
|
||||
physical recovery separation, rigid-mode preservation을 정의한다. physical drilling 모델로 scope를
|
||||
바꾸지 않는다.
|
||||
5. fixed-global force와 moment의 external virtual work, O-MOM-01 nodal-moment conjugacy/derivative,
|
||||
O-BC-01 prescribed finite-rotation path와 constrained correction을 명시한다.
|
||||
6. same-trial complete residual과 algorithmic tangent에 material/geometric/map/drill/load-work terms가
|
||||
빠짐없이 대응함을 trace한다. 이 연구의 benchmark formula를 FESA governing equation으로 복사하지 않는다.
|
||||
|
||||
### 9.2 Numerical Review Agent에 전달할 benchmark/reference evidence
|
||||
|
||||
1. B-01~B-06을 각기 독립 blocking 후보로 검토하고, quantities, norms, scales, perturbation study,
|
||||
invariant/balance/rollback tolerance를 `O-TOL-01` 해소와 함께 고정한다.
|
||||
2. B-07F는 O-MOM-01과 독립인 point-dead-load large-rotation 후보로 먼저 검토하되 S16의
|
||||
vendor S4R values를 independent/formulation-equivalent target으로 부르지 않는다. B-07M
|
||||
pure-moment MES는 O-MOM-01이 해결된 뒤에만 blocking 여부를 정하고, analytical equation,
|
||||
mesh/section/load distribution과 target projection을 별도로 재현·검토한다.
|
||||
3. public exact filenames가 있는 B-08 `n3g1x33x_s4.inp`/`_s4r.inp`와 B-09
|
||||
`n3g9xe4x.inp`/`n3g9xf4x.inp`의 keyword subset, stable identities, units/coordinates, target row
|
||||
definitions와 provenance를 검사한다. 이 단계에서는 실행·생성·rename하지 않는다.
|
||||
4. `reference/shell/`와 `reference/shellR/`는 `nlgeom=NO` linear artifacts다. B-01 baseline 이상의
|
||||
nonlinear-readiness를 부여하지 말고 O-REF-01을 exact stored nonlinear artifact gap으로 유지한다.
|
||||
5. B-10은 original MITC4 known-limit characterization으로 분류하고 MITC4+ curves를 FESA target으로
|
||||
쓰지 않는다. B-11 MMS는 current scope compatibility가 입증되지 않으면 nonblocking gap이다.
|
||||
6. selected external reference만 stable row identity와 `docs/TOLERANCE.md` family-scale policy로
|
||||
비교한다. missing/extra/duplicate/nonfinite precheck와 blocking/warning family를 artifact별로 정한다.
|
||||
7. fixed increment/no-cutback 조건에서 benchmark가 실제로 traversable한지 O-STEP-01을 먼저 판정한다.
|
||||
convergence failure를 임의 tolerance 완화나 hidden retry로 숨기지 않는다.
|
||||
|
||||
### 9.3 Coordinator에 반환하는 gate 의미
|
||||
|
||||
- Research quality gate는 통과한다: approved gaps에 직접 대응하는 Tier 1/2 evidence, applicability
|
||||
limits, exact public/local candidate identities, artifact gaps와 downstream acceptance questions가 있다.
|
||||
- 이 `passed`는 formulation 또는 nonlinear reference readiness 통과를 뜻하지 않는다.
|
||||
O-ROT/O-MAP/O-DRILL/O-MOM/O-BC는 Formulation gate, O-TOL/O-REF/O-BENCH/O-STEP은 Numerical
|
||||
Review gate에서 해소해야 한다.
|
||||
- requirements, code, tests, CMake, I/O, phase 또는 reference artifact는 이 stage에서 변경하지 않는다.
|
||||
|
||||
## 10. Self-Audit and Research Quality Gate
|
||||
|
||||
| audit item | result | evidence |
|
||||
| --- | --- | --- |
|
||||
| approved requirement trace | pass | RQ와 Sections 4–9가 NSNR-003/041/074/006/048/018/063/011/019/030/034를 직접 다룸 |
|
||||
| key theory claim sourcing | pass | TL/MITC4 S1/S6, rotations S2–S5, Newton S7, V&V/MMS S11–S13, tabulated benchmark evidence S16 |
|
||||
| fact/decision/inference/open separation | pass | Section 4의 각 claim label과 Section 8 gap IDs |
|
||||
| benchmark exactness | pass | B-01~B-06, B-07F/B-07M, B-08~B-11마다 exact artifact 또는 explicit artifact gap, target, cannot-verify, limit, Numerical Review question 기재 |
|
||||
| nonlinear artifact honesty | pass | P6/B-01에서 `reference/shell*`의 `nlgeom=NO`와 nonlinear gap을 명시 |
|
||||
| compatibility restraint | pass | S4/S4R/MITC4+ 및 Abaqus/NAFEMS 경계를 Sections 3, 7, 8에 명시; internal equivalence claim 없음 |
|
||||
| tolerance restraint | pass | source가 공개한 benchmark load/geometry만 후보로 기록; 새로운 reference/invariant tolerance를 만들지 않음 |
|
||||
| source access/licensing limits | pass | NAFEMS/ASME paywall, publisher access, public author copy/CC BY와 graph-only limits 기록 |
|
||||
| downstream sufficiency | pass | exact formulation and Numerical Review action lists와 owner별 open issue 제공 |
|
||||
| ownership | pass | 이 artifact만 Research Agent 소유; external solver/reference 실행·변경 없음 |
|
||||
|
||||
검색했지만 확보하지 못한 핵심 evidence는 (1) 공개·독립·machine-readable NAFEMS R0029 target
|
||||
source, (2) FESA subset에 이미 맞는 stored nonlinear S4/S4R input/CSV, (3) original FESA-MITC4의
|
||||
objective 24-DOF drilling/finite nodal-moment 정식화다. 이 부재를 source compatibility 주장이나
|
||||
새 numerical value로 메우지 않았다.
|
||||
Reference in New Issue
Block a user