Files
FESADev/docs/hht-implicit-dynamics/formulation-acceleration-recovery.md
T

16 KiB
Raw Blame History

제약 일관 가속도 복구 후보

2026-10-11 질량 정책 변경: HHT-ADR-012에 따라 현재 고유치·HHT는 lumped mass를 사용한다. 아래 consistent 질량을 전제로 한 수식 후보·검토·PASS/FAIL은 해당 시점의 이력이다. 변경본 통과로 승계하지 않으며 현재 수식은 formulation, 재검증 상태는 PRD의 현재 checklist를 따른다.

1. 제안과 변경 경계

사용자는 기존 정확도 요구를 유지하고 채택 전에 별도의 constraint-consistent acceleration recovery를 정식화·검증하는 경로를 선택했다. 후보는 수렴한 endpoint의 q,v와 시간적분 이력 a_h,A를 그대로 두고 현재 질량 영공간에서만 가속도를 보정한다. 여기서 a_h는 기존 정식화에서 a라 부른 endpoint 평형/이력 변수다. 이름 구분은 후보를 설명하기 위한 것이며 현행 API·HDF5 의미 변경은 아니다.

[ a_{rec}=a_h+N\eta,\qquad (\psi_qN)\eta=-r_2(q,v,a_h,t). ]

이 식은 endpoint 평형을 보존하며 acceleration hidden constraint를 만족시키지만, q/v 정확도나 물리 질량 방향 가속도 오차를 고치지 않는다. C08a/b와 기존 NR-009 FAIL은 유지한다. 본 문서는 구현·공식 출력 채택·기능 통과의 승인이 아니다.

2. 적용 가정과 좌표

관성 상세 §§1–4의 유한회전 shell, consistent kinetic mass, 선형 탄성 및 기존 objective numerical drilling potential을 그대로 사용한다. DOF는 절점별 fixed-global [u_x,u_y,u_z,phi_X,phi_Y,phi_Z], v=dot q, 좌표 가속도 단위는 병진 length/time², 회전 rad/time²다. 외력 부호는 E=Ma+c+f_int-F. 새 재료 상태·감쇠·질량·공간 적분은 없다. 기존 scalar mass moments 3×3×3, 내력/물리 에너지 2×2×2 및 drill 합을 보존한다.

이하 q/v/a와 미분은 고정 zero BC를 제거한 free 좌표에서 쓰며, 전체 좌표로 올릴 때 constrained 성분은 0이다. N(q)는 실제 admissible free 공간의 analytic mass-null basis로, M_ff N=0 및 **N^T I_f=0**를 만족한다. 후자는 shell의 I=∫rho H^T(Ha+B_x[v,v])dV0, HN=0에서 성립한다. 일반 singular mass만으로 N^Tc=0가 보장되는 것은 아니므로 velocity-dependent algebraic constraint를 가진 다른 DAE에 이 후보를 그대로 적용하지 않는다.

각 admissible nodal null은 [0;J_l(phi)^(-1)d]다. 현재 total rotation-vector chart, geometry 및 swing/twist 유효성과 일정 null rank, 양의 physical mass 및 bounded algebraic inverse가 전 구간에서 필요하다. Partial BC는 null과 free 공간의 교집합을 구한다. N의 constrained 성분을 단순 삭제하거나 작은 positive mass를 null로 재분류하지 않는다. Empty null에서는 a_rec=a_h; all-fixed 모델도 empty recovery로 처리한다.

이 문서의 N은 N3/N4의 고정 scale D=diag(ell I3,I3), x=D^-1 q, 연속 정규화 analytic basis Z와 **N=D_f Z(x)**로 대응한다. 따라서 psi=N^T g_f=Z^T(D^Tg)_f, g=f_int-F. 미분 시 basis도 현재 q의 함수로 미분한다. N은 시간 grid와 무관한 같은 정의·source 순서를 사용하며 eigen/SVD 부호 변경으로 선택하지 않는다.

3. 복구 방정식과 필요한 미분

정확한 연속 궤적의 대수조건과 첫 두 시간미분은

[ \begin{aligned} \psi(q,t)&=N(q)^Tg_f(q,t)=0,\ r_1(q,v,t)&=\psi_qv+\psi_t=0,\ r_2(q,v,a,t)&=\psi_q a+\psi_{qq}[v,v]+2\psi_{qt}v+\psi_{tt}=0. \end{aligned} ]

C=psi_q, k=psi_qq[v,v]+2psi_qt v+psi_tt, G=C N라 두면 후보 solve와 유일해는

[ G\eta=-(C a_h+k),\qquad a_{rec}=a_h-NG^{-1}(C a_h+k). ]

G^-1는 수식 표기이며 행렬 역을 만들라는 지시가 아니다. G는 null 개수 차원의 선형 operator이고 대칭·양정성을 전제하지 않는다. 정해진 q/v/t에서 복구 residual은 R_rec(eta)=G eta+r2_h, tangent는 정확히 G다. 기존 endpoint Newton residual·Keff는 수정하지 않는다.

공개 constant force/고정 BC subset은 t>0와 0+ 우측에서 autonomous하므로 psi_t=psi_qt=psi_tt=0. 반면 C08a와 explicit-time 제조해는 내부 시험 전용이다. q와 무관한 smooth F(t)에 대해

[ \psi_t=-N^T\dot F_f,\quad \psi_{qt}[p]=-DN[p]^T\dot F_f,\quad \psi_{tt}=-N^T\ddot F_f. ]

이는 공개 amplitude·시간변화 BC 지원을 추가하지 않는다. STEP jump 자체의 미분이나 impulse는 이 복구의 대상이 아니며 초기 우측 smooth branch를 사용한다.

미분 구현에 필요한 contraction은 다음과 같다. K는 현재 D_q f_int, F는 q-independent다.

[ \begin{aligned} \psi_q[p]&=DN[p]^Tg_f+N^T(Kp)f,\ \psi{qq}[p,s]&=D^2N[p,s]^Tg_f +DN[p]^T(Ks)_f+DN[s]^T(Kp)_f +N^T(DK[s]p)_f. \end{aligned} ]

N^Tg=0이어도 g=0가 아니므로 DN/D²N 항을 삭제하지 않는다. Endpoint 접선만 보유한 것으로 DK까지 제공된다고 가정하지 않는다. 필요량은 전체 3차 tensor가 아니라 지정 방향 contraction이지만, 해석/정확 미분의 제공 가능성과 독립 derivative oracle는 후속 구현·검토의 미해결 항목이다. 공개 autonomous subset에서 physical energy와 병진 force의 null work가 항등적으로 0임을 사용하는 drill-only 표현은 별도 항등식 검증 후에만 동등식으로 사용할 수 있다. C08a에는 time-dependent generalized force가 있어 같은 단순화를 자동 적용할 수 없다.

4. 보존량과 달라지는 가속도

고정 q/v에서 delta a=N eta이므로 정확 산술에서

[ \Delta I=M N\eta=0,\quad \Delta E=0,\quad \Delta\ddot x=H N\eta=0. ]

이는 full residual과 support reaction에도 적용한다. 선택한 질량은 positive Gram integral이므로 free null을 zero constrained 성분으로 올린 bar N에 대해 bar N^T M bar N=0이면 H bar N=0와 M bar N=0이다. M_ff N=0만 수치적으로 관찰하고 full constrained-row 불변성을 생략해서는 안 된다.

q/v가 같으므로 T,U_phys,U_drill,W,P,L도 같고, material point 가속도가 같으므로 Pdot,Ldot와 global force/moment balance도 같다. 따라서 energy drift나 C08b q/v/P/L 오차를 이 복구가 개선할 수 없다. 수치 계산에서는 큰 eta와 null-action 오차가 곱해져 잔차 차이를 만들 수 있으므로 전후 차이를 직접 검증한다.

절점별 delta a_phi=J_l^-1 d lambda라 쓰면

[ \Delta\ddot d=B\Delta a_\phi=0,\qquad \Delta\dot\omega=J_l\Delta a_\phi=d\lambda. ]

즉 director acceleration과 물질점 acceleration은 보존되지만, 공간 angular acceleration의 axial spin 성분과 chart acceleration은 변한다. omega=J_l v_phi는 그대로다. omega_dot_rec=J_l a_rec,phi+DJ_l[v_phi]v_phi를 계산할 수 있으나, hidden1이 남아 있는 이산 q/v와 완전히 일관된 연속 triad 궤적을 얻었다는 뜻은 아니다. Director-only 검증으로 full chart a 또는 spatial spin 정확도를 대체하지 않는다.

5. 이력·regularity·오차 전파의 경계

기존 적분은 반드시

[ A_{n+1}=(1+\alpha)a_{h,n+1}-\alpha a_{h,n},\qquad A_0=a_{h,0}, ]

및 기존 q/v predictor를 유지한다. a_rec를 다음 old-a history나 A에 대입하면 다른 적분법이다. 이 후보는 초기 q/v/a_h/A를 다시 설정하지 않으며 초기 hidden2가 일관하면 exact arithmetic에서 초기 correction은 0이다. q/v/A/a_h의 전후 동일성은 전체 history로 확인해야 한다.

향후 채택한다면 integration acceleration과 recovered estimate의 의미를 구별하고, 같은 source/frame/q/v identity의 candidate로 평가·검증해야 한다. 현재 물리 a라는 명칭, 공개 quantity와 저장된 history의 의미에 영향이 있으므로 formulation/main/I/O owner의 후속 결정이 필요하다. 이 문서는 field·API·schema·저장 방식이나 recovery 실패의 새 공개 진단을 정하지 않는다. 실패한 recovery를 성공 frame으로 표시하거나 기존 state에 부분 반영하는 것은 허용하지 않는다.

Scaled form은 b_rec=b_h+Z eta, G=psi_x Z, r2=psi_x b_h+psi_xx[w,w]+2psi_xt w+psi_tt. N1의 finite-first/단위 scale, N4의 현재 algebraic stiffness scale W와 W^-1 G W^-1 regularity를 그대로 대조한다. 새 tolerance, diagonal shift, epsilon mass, pseudoinverse 또는 clamp를 정하지 않는다. Solve residual과 보정된 hidden2의 uncancelled contraction scale, eta 및 N eta 크기, full equilibrium 전후 차이를 함께 기록한다. Hidden2의 post-recovery 수치 판정과 신규 error estimate의 최종 승인자는 numerical reviewer다.

Q=I-NG^-1 C이면 QN=0, C Q=0이고 a_rec=Q a_h-NG^-1 k다. 이는 C에 따른 oblique projection이며 최소 Euclidean correction이나 질량 norm 최소화라고 부르지 않는다. 동일 q/v의 null 오차는 제거하지만 물리 complement P_N a_h, P_N=I-N(N^TN)^-1N^T는 보존한다(혼합 단위 전체 비교는 scaled Z의 projector 사용).

q/v와 현재 null을 제외한 a_h가 정확해에 대해 O(h²), 초기값도 같은 정확도이고, G inverse 및 필요한 미분이 구간 전체에서 균일하게 bounded이면 위 smooth recovery map은 O(h²) 가속도 추정을 줄 수 있다. 이는 조건부 오차 전달 설명이며 현재 HHT DAE가 그 전제를 만족한다는 증명이 아니다. r1과 psi를 고치지 않으며 r2=0 하나는 정확도 증거가 아니다. N7의 기존 a_h cancellation/noise estimate가 a_rec의 완전한 오차 추정으로 자동 승계되지도 않는다. 후속 검토는 delta eta=-G^-1(delta r2+delta G eta), delta a_rec=delta a_h+delta N eta+N delta eta에 기초해 derivative·basis·solve 오차까지 구별해야 한다.

Basis 표현에도 주의한다. tilde psi=S(q,t)psi에서 연속 2차 미분은 S r2+2 dot S r1+ddot S psi다. 따라서 정확 manifold와 hidden1에서 표현 독립성이 성립하지만 이산 r1이 비영이면 q-dependent basis 교체가 recovery를 바꿀 수 있다. N3/N4의 smooth normalized basis를 고정하고 그 미분을 포함한다. Constant invertible 재표현은 같은 correction을 주어야 하지만, arbitrary q-dependent normalization에 대한 exact invariance를 요구하지 않는다.

6. 독립 검토용 반증 사례

아래는 추가 검증 제안이며 기존 C08/N7의 grid·전체 시점·원 정확도 요구를 바꾸지 않는다. 기존 a_h와 후보 a_rec를 함께 보존하고 실패 결과를 대체하지 않는다.

ID 모델/조작 반드시 확인할 결과
AR-01 cubic DAE NR-009의 무차원 M=diag(1,0), U=(z-x³)²/2, F=0, x=t,z=t³, v0=(1,0), a0=A0=0; 기존 5 grids와 계수 유지 N=(0,1), C=(-3x²,1), k=-6x vx², G=1; a_rec,z=3x² a_h,x+6x vx²=6t exact. q/v/a_h/A는 기존 recurrence와 동일, a_h 전체 최대의 1차 FAIL은 남고 a_rec는 exact branch. 고정밀 독립 계산으로 startup first/peak/late/final 모두 측정
AR-02 explicit time 시험 전용 psi=z-sin(t), M=diag(1,0), U=z²/2, F_z=sin(t), x=0 psi_tt=sin(t)로 a_rec,z=-sin(t). 명시 시간항을 누락하면 잘못된 0이 되어야 함. Mixed-time 항은 아래의 별도 추상 DAE로 검사
AR-03 physical error AR-01의 같은 q/v에 a_h,x=epsilon≠0를 의도적으로 삽입 a_rec,x=epsilon 그대로, a_rec,z=3x²epsilon+6xvx²; r2=0이어도 physical error와 endpoint residual은 유지. 복구로 equilibrium 실패를 숨길 수 없음
AR-04 q/v error psi=z-x², 현재 x=1,z=1, vx=1+delta, a_h,x=0 a_rec,z=2(1+delta)²이므로 vx 오차가 그대로 전파. 별도로 psi=z, z=epsilon, vz=delta이면 a_rec,z=0이어도 psi/r1 오류 유지
AR-05 null/BC/basis C05의 finite/warped/partial-BC fixture와 constant basis permutation·sign·scale, empty null, rank loss admissible current N만 사용; constant basis 재표현 후 correction 동일. Fixed-global UR3 또는 truncated null mutation은 MN/BN/전후 평형 검사 실패. G singular/conditioning 실패를 보정으로 통과시키지 않음
AR-06 derivative/보존 현 q±s p에서 basis·g를 모두 다시 평가하여 C/psi_qq contraction을 독립 고정밀/차분으로 대조 DN/D²N/explicit-time mixed 항 누락 검출. Full I/E/reaction, xddot/ddot d/Pdot/Ldot, q/v 에너지 전후 보존 및 axial angular-a 변화의 해석식 확인. 기존 N5 sweep·N6 기준에 대조
AR-07 C08a 원 manufactured orbit, force oracle, 초기값, 모든 5 grids 유지; 정확한 Fdot/Fddot와 mixed terms 포함 기존 q/v/a_h와 후보 a_rec의 full chart 오차 및 null/physical 분해. 추가로 spatial omega_dot·director acceleration oracle. 각 quantity의 전체/first/peak node·time/late/final, N7 noise와 원 정확도 기준을 모두 보고
AR-08 C08b 원 free plate·초기화·T·모든 5 grids 유지 nested 공통 시점의 q/v/a_h/a_rec full self difference와 null/physical 분해, grid-independent 초기값, 대표 frame residual/Keff. q/v/P/L/energy 결과 전후 동일. q/v FAIL 또는 physical-a FAIL이 남으면 recovery만으로 기존 acceptance 충족 불가

AR-02의 mixed-time 검사는 derivative-mutation용 추상 DAE다. M=diag(1,0), 명시 시간의존 potential U(q,t)=(z-t x)²/2, F=0의 endpoint 식은 x''-t(z-t x)=0, z-t x=0이다. 초기 q0=(0,0), v0=(1,0), a0=(0,2)에서 정확해는 x=t,z=t². 따라서 psi=z-t x, psi_q=(-t,1), psi_qt=(-1,0), psi_qq=0, psi_tt=0이고 a_rec,z=t a_h,x+2vx=2다. 이 모델은 §3의 **시간불변 내력과 q-independent F(t)**에 대한 외력 미분 특수식으로 계산하지 않고, 일반 r2 식에서 psi를 직접 미분한다. 공개 shell 또는 C08a force convention의 사례가 아니며 시간의존 potential 지원도 추가하지 않는다.

C08의 분해는 차이를 먼저 같은 fixed chart에서 구한 다음 하나의 공통 projector로 나눈다. C08a는 정확 q의 Z_*, C08b는 각 비교쌍의 fine state Z_fine을 기준으로 scaled difference e에 e_N=ZZ^T e, e_P=(I-ZZ^T)e를 적용한다. 이 선택과 node/time을 기록하고 각 해를 서로 다른 basis에 먼저 projection한 차이를 같은 양으로 취급하지 않는다. a_rec-a_h의 실제 correction이 current null인지 확인할 때는 해당 해 자체의 current Z를 쓴다. q 차이의 분해는 현 tangent 방향에 대한 진단이며 유한 회전 두 형상의 물리적 동일성 판정이 아니다.

현재 NR-009 로그에서 C08a finest angular-a 최대의 current-null 오차는 5.58582318e-4, complement는 1.00582661e-4다. 따라서 null 제거만으로 finest 1e-4 통과를 예상할 수 없다. C08b finest rotational q/v/a self difference는 1.38700902e-4 / 1.15434080e-2 / .868938812이며 q/v는 후보로 바뀌지 않는다. 기존 로그 분해와 위 공통-projector 진단은 정의를 대조한 후 비교해야 한다.

7. 인계와 미해결 항목

  • startup_review의 독립 검토: 식·basis 미분·full reaction 불변식·조건부 차수 논리·반례 및 recovery noise의 검증 가능성. 작성자의 식 유도를 수치 승인으로 취급하지 않는다.
  • 구현 전 근거 공백: shell의 C/psi_qq contraction, C08a Fdot/Fddot 독립 oracle, finite/warped/partial-BC regularity와 derivative 오차 전파. 미확인 상태에서 finite difference 값을 production 계약으로 선택하지 않는다.
  • 원 정확도 요구의 충족 여부: AR-01 성공은 C08a/b 성공을 뜻하지 않는다. C08b q/v 및 physical-a 원인과 기존 FAIL 해소는 별도 남은 과제다.
  • 채택 여부와 state/output 의미는 검증 후 main·formulation·I/O owner가 결정안을 작성한다. 본 문서는 현행 계약·공개 subset·영속 schema를 변경하지 않는다.

실행 범위는 기존 문서·evidence 대조와 자체 수식 유도, 문서 링크/diff 정적 확인이다. 새 수식 probe, source 변경, build/test와 reference 실행은 하지 않았다. 위 AR 사례는 제안 상태이며 통과 evidence가 아니다.