docs(mitc4): record drilling choices and current verification limits
This commit is contained in:
@@ -15,6 +15,9 @@ Mass는 `3×3×3` 적분의 scalar thickness moments를 row-sum하여 nodal `6×
|
||||
3 병진·2 director 접평면 회전 관성과 warped geometry cross coupling을 보존한다.
|
||||
Numerical drill은 analytic mass null이며 인공 drilling inertia를 넣지 않는다.
|
||||
Stabilization scale은 초기 physical rotary diagonal 8개 trace 평균의 `10^-3`이다.
|
||||
2026-10-20부터 모델 전체의 코드 설정은 직접 초기 director 스프링을 기본으로 하며
|
||||
기존 상대 비틀림도 선택할 수 있다. 원형상 eigen의 K/M과 drilling block은 두 방식에서
|
||||
같다. Artificial drilling mass를 추가하거나 서로 다른 spectrum을 만들지 않는다.
|
||||
Global 실제 BC를 먼저 적용하고 analytic null과 free 공간의 교집합만 제거한다.
|
||||
Partial rotational BC를 full clamp로 대체하지 않고 finite constrained spectrum을 유지한다.
|
||||
Positive nodal mass space를 whitening하고 sparse symmetric 문제를 FEAST에 전달한다.
|
||||
@@ -41,6 +44,9 @@ HDF5는 `schema_version=0`, `eigen_schema_version=1`, procedure `linear-frequenc
|
||||
Constrained 성분은 exact zero이고 sign은 최대 scaled global component의 stable rule로 정한다.
|
||||
Raw 작은 음수 lambda를 clamp하지 않는다. Frequency는 lambda>=0 mode subset만 생성한다.
|
||||
`verification`에는 전체 c개 residual·Gram·null 검사와 backend call/control evidence를 보존한다.
|
||||
실제 선택은 `/metadata`의 `mitc4_drilling_formulation`과 U64LE
|
||||
`drilling_diagnostics_version=1`에 기록한다. Eigen에는 평형 frame이나 가상 drilling
|
||||
moment dataset을 만들지 않는다. Typed 비교 report의 진단 frames도 빈 배열이다.
|
||||
|
||||
| 원본 | 비교 계약 |
|
||||
| --- | --- |
|
||||
@@ -69,10 +75,16 @@ Domain→local K/M→ordered assembly→reduced solve→global phi 복원→all-
|
||||
|
||||
## 실제 evidence와 미해결 범위
|
||||
|
||||
2026-10-20 source `6bbbb2b`의 두 방식 별도 실행에서 정식10-mode 생성·비교를 통과했고
|
||||
실제 eigen table은 정확히 같았다. 전체 Debug Native/CTest는 각각1035개 중
|
||||
1024 PASS·기존10 FAIL·1 INCONCLUSIVE SKIP이다. 해당 Value 비교 통과와 전체 물리 검증을 구분한다.
|
||||
|
||||
2026-09-10 사용자 승인 첫 구현에서 전체 417/417 PASS와 원본 10 Value의 모드별5% 통과 기록이 있다.
|
||||
최대 외부 상대차는 약 `4.261331%`다. 이전 RMS1% 불일치 이력은 소급 PASS로 고치지 않는다.
|
||||
이 기록은 당시 revision의 evidence이며 이번 문서 정리는 새 build/test를 실행하지 않았다.
|
||||
Rational mass oracle·Jensen energy·좌표 재계산 공변성·density scaling·all-c 실패 주입이 보완 근거다.
|
||||
S3 public static 평형 충돌과 Abaqus Value 정확도 개선은 후속 보류다.
|
||||
S3 partial-BC의 public static은 직접 방식에서 인공 모멘트 차감 후 기존 gate를 통과한다.
|
||||
기존 방식의 raw gate 실패는 명시적 검사로 보존했다. 이는 partial BC를 full clamp로
|
||||
바꾸거나 Value 허용치를 완화한 해결이 아니다. Abaqus Value 정확도 개선은 후속 보류다.
|
||||
실제 512회 vendor 호출 또는 실제 HDF5 close-error의 모든 조합을 주입한 것은 아니다.
|
||||
Retained shell/shellNL 회귀와 내부 검증 의무를 유지하며 `reference/temp` 제외 예제를 재사용하지 않는다.
|
||||
|
||||
@@ -136,7 +136,14 @@ spectrum·static response의 공변성을 검증한다. 다른 BC를 같은 문
|
||||
여섯 물리 rigid modes는 양의 mass를 갖는다. Pure numerical drill `[0;di]`는 mass=0,
|
||||
stiffness>0이다. Linear UR에 full spatial Omega를 넣는 field와 이 physical 대표값을 구분한다.
|
||||
|
||||
## S2. 비선형 objective potential과 고정 scale
|
||||
## S2. 비선형 drilling 선택과 고정 scale
|
||||
|
||||
2026-10-20 현재 기본값은 초기 global 단위 director `d_i0`를 사용한 직접 스프링이다.
|
||||
`gamma_i=d_i0·phi_i`, `Pi_d=0.5*kd*sum(gamma_i²)`,
|
||||
`r_i=kd*gamma_i*d_i0`, `K_ii=kd*d_i0*d_i0^T`이며 병진·절점 간 coupling은0이다.
|
||||
Drilling polar/swing/atan2를 평가하지 않고 유한 강체 회전의 인공 모멘트를 허용한다.
|
||||
S1의 초기 scale과 mass null은 유지한다. 원형상 선형/eigen block은 두 방식에서 같다.
|
||||
다음 objective 유도는 선택 가능한 기존 상대 비틀림 방식에 한정한다.
|
||||
|
||||
기존 [nonlinear 정식화 §10](../nonlinear-static-newton-raphson/formulation.md)의 polar
|
||||
corotation, total nodal rotation, minimal swing 및 objective `gamma_i=atan2(s_i,c_i)`를
|
||||
@@ -148,7 +155,9 @@ corotation, total nodal rotation, minimal swing 및 objective `gamma_i=atan2(s_i
|
||||
K_d=k_d\left(D_\gamma^TD_\gamma+\sum_i\gamma_iD^2\gamma_i\right). \tag{S2}
|
||||
\]
|
||||
|
||||
Polar/swing/atan2의 미분과 branch validation을 생략하지 않는다. Trial마다 scale을 바꾸지 않는다.
|
||||
기존 방식에서는 polar/swing/atan2의 미분과 branch validation을 생략하지 않는다.
|
||||
현행 구현의 polar1과 미분 정확도 실패를 보존하며 과거 polar12로 복원하지 않는다.
|
||||
두 방식 모두 trial마다 scale을 바꾸지 않는다.
|
||||
일반 nonlinear Hessian 전체의 SPD는 주장하지 않는다. 초기에도 Dgamma는 corotation coupling을
|
||||
포함하므로 linear Td와 동일시하지 않는다. 기존 physical 선형극한, directional residual/Hessian,
|
||||
objective rigid orbit·state rollback을 검증한다. 새 eigen에는 이 nonlinear state를 전달하지 않는다.
|
||||
@@ -173,3 +182,7 @@ Static 대응 load는 node1의 tangent moment `m=(5/3)M0 b`, 다른 load=0이다
|
||||
`d·m=0,mZ=M0`; `theta1Z=M0/Kff`, full residual `r=Kq-F`다.
|
||||
회전 뒤 `m'=Qm`을 사용한다. Pure global eZ moment는 drilling 성분 때문에 기존 load
|
||||
계약에 부합하지 않는다. Eigen의 constrained residual을 static reaction으로 출력하지 않는다.
|
||||
|
||||
2026-10-20 현재 이 static 사례의 직접 방식은 별도 인공 spatial 모멘트를 차감한 기존
|
||||
gate를 통과하고, 기존 방식은 raw gate에서 계속 거부된다. S3의 K/M/lambda target이나
|
||||
partial BC를 바꾼 결과가 아니며 Value 비교 예외를 정적 평형에 적용하지 않는다.
|
||||
|
||||
Reference in New Issue
Block a user