# HHT implicit dynamics 연구 근거
- Feature: `hht-implicit-dynamics`
- Owner: `research-agent`
- Date: `2026-09-22`
- Status: `Research evidence; formulation and acceptance not approved`
- 기준: [프로젝트 지침](../../AGENTS.md), [PRD](../PRD.md), [ARCHITECTURE](../ARCHITECTURE.md), [ADR-028](../ADR.md#adr-028).
조사 범위는 HHT 계수·평형식 후보, reference 입력의 공개 의미, shell 관성의 적용 한계와
검증 후보다. 코드·reference·상위 계약을 변경하지 않았다. 아래 **사실**은 열람한 자료,
**도출/추론**은 명시한 가정에서의 계산, **공백**은 후속 owner가 결정·검증할 항목이다.
Abaqus 자료는 공개 입력·출력 의미를 해석하는 근거이며 내부 알고리즘 동등성의 목표가 아니다.
후속 사용자 결정으로 이번 HHT 구현의 질량은 consistent mass로 확정되었다.
아래 lumped 비교·검증 후보는 연구 이력이며 현재 지원 요구에서 제외한다.
## 1. 결론과 결정 후보
| 질문 | 근거와 결론 | 후속 결정 경계 |
| --- | --- | --- |
| HHT 계수 | 원래 음수 alpha 관례의 표준 후보는 `-1/3 ≤ alpha ≤ 0`, `gamma=1/2-alpha`, `beta=(1-alpha)^2/4`다. `alpha=0`이면 평균가속도 Newmark다. [S1](#sources), [S2](#sources) | beta/gamma 독립 입력을 허용할지, 기본 alpha와 허용 범위는 requirement/formulation에서 확정 |
| 안정성 | 선형 안정성은 큰 dt의 정확도, 비선형 Newton 수렴 또는 임의 유한회전 에너지 안정성을 보장하지 않는다. [S3](#sources), [S8](#sources) | 시간 수렴과 반복 수렴 evidence를 별도로 지정 |
| reference 하중 | 무접촉 기본 application은 transient fidelity이고 무 amplitude 하중은 STEP이다. 공개 기본 계수는 `(-0.05,0.275625,0.55)`다. [S4](#sources), [S5](#sources) | FESA의 지원 의미와 첫 시점 하중/초기 가속도 계약을 명시 |
| shell mass | 현재 eigen의 consistent 원본·derived nodal lumping·drilling null은 재사용 검토 근거다. [L1](#local-evidence) | 후속 사용자 결정: shell 속도 보간의 운동에너지를 그대로 적분하는 consistent mass 채택; lumped는 이번 지원 요구에서 제외 |
| reference coverage | 작은 변위, 성긴 dt, 9개 절점 U/UR만 확인한다. 큰 회전·가속도·에너지 검증은 부족하다. | 아래 독립 검증 후보와 함께 사용 |
## 2. HHT 이론 및 잔차 후보
**사실.** S1은 HHT 원논문의 서지·초록을 확인한 근거이고, 이번 열람에서는 본문 PDF가
초록 페이지로 이동했다. 계수 관계는 공식 S2 §4.11.1.3에서 교차 확인했다.
위 표의 결합 계수는 선형 문제에 대해 널리 쓰이는 2차 정확도·무조건 안정성의 충분한
선택이다. 이를 beta/gamma 자유 조합의 필요충분조건으로 주장하지 않는다.
특히 `beta>0`, `gamma≥1/2`만으로 HHT 안정성을 인증할 수 없다.
`alpha=0`과 위 결합 관계를 함께 적용해야 `beta=1/4`, `gamma=1/2`가 된다. [S1, S2]
**도출: 일정 M,C, 가산 변위 좌표, 외력 f(t) 후보에 한정.**
`g(q,v,t)=f_int(q)+Cv-f(t)`로 두면 force-weighted 후보는 다음과 같다.
\[
R_{n+1}=M a_{n+1}+(1+\alpha)g_{n+1}-\alpha g_n=0,
\]
\[
q_{n+1}=q_n+h v_n+h^2[(1/2-\beta)a_n+\beta a_{n+1}],\qquad
v_{n+1}=v_n+h[(1-\gamma)a_n+\gamma a_{n+1}].
\]
Newmark 운동학을 대입하고 `q_(n+1)`로 미분하면 Newton 후보는
\[
K_{eff}=\frac{M}{\beta h^2}+(1+\alpha)\frac{\gamma}{\beta h}C
+(1+\alpha)K_t,\qquad K_{eff}\Delta q=-R.
\]
이는 S2/S3의 계수·선형 유효강성 관계와 대조할 **독립 미분 결과**이며 채택 정식화가 아니다.
Follower load라면 외력의 configuration 미분, 상태 의존 감쇠·질량이라면 해당 미분과 관성항이
추가된다. `f_int((1+alpha)q_(n+1)-alpha q_n)`와
`(1+alpha)f_int(q_(n+1))-alpha f_int(q_n)`는 비선형에서 일반적으로 다르다.
외력도 endpoint 가중인지 중간시각 평가인지 고정해야 한다. 선형 force/displacement weighting의
동등성을 비선형으로 확장하거나 서로 다른 자료의 부호 관례를 혼합하면 안 된다.
**사실/주의.** S3는 `alpha=1`을 Newmark로 사용하는 별도 관례다. 제시된 beta/gamma와
endpoint를 대조하면 본 문서 관례와의 관계는 `alpha_OpenSees=1+alpha`다.
그 페이지의 변환식 설명은 이 endpoint와 부호상 충돌하므로 그 한 문장을 그대로 사용하지 않는다.
Abaqus 공개 허용범위 `[-1/2,0]` 및 moderate-dissipation 기본값을 원 HHT의
`[-1/3,0]` 표준 후보와 혼동하지 않는다. [S3, S4]
**추론.** HHT의 algorithmic damping은 h와 진동주기에 의존하는 이산화 효과다.
재료·점성 감쇠 `C` 또는 Rayleigh 계수의 물리 모델과 별개이며, 알고리즘 alpha를
질량비례 감쇠 계수로 사용하면 안 된다. 정밀한 선형 무감쇠 문제에서 alpha=0은
에너지 보존 검증 후보이나, 비선형에서 같은 결론을 자동 적용할 수 없다. S8은
Newmark 계열의 비선형 에너지·각운동량 보존 한계를 직접 다룬다.
## 3. reference 입력의 공개 의미
**사실: Abaqus 2025 문서 기준.** 버전 metadata를 reference readiness의 추가 조건으로
요구하지 않는다. 아래 기본값을 기존 CSV에서 역으로 식별했다는 주장도 하지 않는다.
| 입력 | 공개 의미 및 출처 |
| --- | --- |
| `*Dynamic,direct` / `0.1,10.` | 데이터 첫 항목은 dt, 두 번째는 step 기간이다. Contact impact/release가 없는 DIRECT는 고정 dt이므로 이 모델에서는 100 increment 후보다. `DIRECT=NO STOP`은 별도 옵션이며 현재 입력에는 없다. [S4: DIRECT, Data line] |
| application/alpha 미지정 | 무접촉 기본 `TRANSIENT FIDELITY`, `HHT-TF`; Table 1의 alpha/beta/gamma는 `-0.05/0.275625/0.55`. [S4: APPLICATION; S5: Additional Control over Integrator Parameters] |
| amplitude 미지정 | 이 application은 STEP, quasi-static은 RAMP 기본이다. STEP은 step 시작부터 지정 크기이며 첫 increment 길이에 비례해 축소되지 않는다. [S5: Default Amplitude for Loads; S6: AMPLITUDE] |
| `NLGEOM=YES` | 기하 비선형 고려를 요청한다. 관측 응답이 실제로 큰 변형이라는 뜻은 아니다. [S6: NLGEOM] |
| `inc=1000` | increment 수 상한이다. Newton 반복 수나 dt 개수가 아니다. [S6: INC] |
| `*Cload`, no `FOLLOWER` | 일반 집중력 지정이며 FOLLOWER가 있으면 nodal 회전을 따라 방향이 변한다. 본 INP에는 TRANSFORM도 없다. [S7: AMPLITUDE, FOLLOWER] |
| no initial acceleration override | transient fidelity는 step 시작 가속도 계산이 기본이다. 초기조건 keyword가 없다는 이유로 가속도를 모두 0으로 놓을 근거는 아니다. [S5: Controlling Calculation of Accelerations at the Beginning of a Dynamic Step] |
**도출/공백.** 일정 질량의 독립 연속문제라면 초기 평형은
`M a(0+) = f(0+) - f_int(q0) - C v0`다. 실제 FESA에는 구속 분할과 mass-null
조건을 함께 적용해야 한다. STEP의 `0-`/`0+`, 저장 frame 0의 상태, 첫 HHT old-force
history와 가속도 초기화의 결합은 formulation/I/O owner가 명시해야 한다.
공개 STEP 문구와 U/UR CSV만으로 Abaqus의 첫 residual history 생성 절차는 확인할 수 없다.
초기 U/UR=0은 초기 a=0의 증거가 아니다.
## 4. shell mass와 유한회전 관성
**사실: 기존 FESA 계약.** [L1](#local-evidence)의 M1–M7은 작은 회전의
`v=H q_dot`, `M_C=integral rho H^T H dV`와 scalar thickness-moment 기반
nodal block lumping을 정의한다. 일반 global-component row sum이 아니다.
Consistent와 lumped는 총질량·uniform translation energy를 공유하지만 일반 속도장의
운동에너지·orbital inertia·고유치가 동일하지 않다. 기존 eigen 진단에서 consistent가
reference에 더 가깝다는 전달 결과는 조사 동기이며 동적 질량 채택의 증명이 아니다.
**도출: mass-null 좌표.** Director shell에서 `delta d=theta cross d`이고
`theta`가 `d`와 평행하면 director 속도가 0이므로 해당 drilling 성분에는 이 운동학의
물리 질량이 없다. Constant null basis `Z`에 `MZ=0`이면 반이산 방정식은
`Z^T(f_int-f_ext)=0`라는 대수조건을 포함한다(여기서는 C=0).
따라서 전체 M 역행렬로 초기 가속도를 구할 수 없어도 coupled effective system은
풀릴 수 있다. Stiffness가 null 좌표를 묶는지 별도로 확인해야 한다.
초기 대수조건을 무시하거나 작은 임의 질량을 넣어 해결하는 것은 원 모델과 다르다.
Basis가 configuration에 따라 회전하면 그 시간미분도 검토해야 한다.
**도출: 유한회전 공백.** 현재 공간으로 회전하는 director의 속도는 각속도로부터 구한다.
유한회전 파라미터의 단순 시간미분을 각속도와 동일시할 수 없다.
일반화 좌표에서 `T(q,q_dot)=1/2 q_dot^T M(q) q_dot`라면 관성력은
`d/dt(partial T/partial q_dot)-partial T/partial q`이며 단순 `M(q) q_ddot`보다
많은 항을 가진다. 반면 reference 보간이 고정된 병진 continuum에는 일정 질량이 가능하다.
따라서 “NLGEOM이면 질량을 반드시 매번 재조립”도 “초기 M 고정이면 모든 유한회전 지원”도
일반 명제가 아니다. 회전 좌표·inertial virtual work·gyroscopic 항·consistent tangent·
관성의 좌표 공변성을 선택한 shell 운동학에서 유도해야 한다. S8은 보존량 검증 필요성을 뒷받침한다.
**결정 후보.** 작은 회전의 일정 질량 동역학과 유한회전 shell 동역학을 구분하여 승인 범위를
정한다. 후자를 지원한다면 기존 비선형 static internal force에 초기 M만 더하는 방식을
독립적으로 정당화해야 한다. 이 문서는 mass 종류·drilling 처리·회전 적분을 채택하지 않는다.
## 5. 현재 reference의 evidence와 한계
- **L1:** [기존 eigen mass 정식화](../mitc4-shell-feast-eigen2/formulation-mass-stabilization.md), M1–M7. 작은 변형 eigen 계약의 읽기 전용 근거다.
- **L2:** [원본 INP](../../reference/shellNL-dyn-meshfine/shellNL-dyn-meshfine.inp), [원본 CSV](<../../reference/shellNL-dyn-meshfine/shellNL-dyn-meshfine displacements.csv>). 실제 열람은 main checkout의 동일 상대 경로에서 수행했다. 이름·bytes를 변경하지 않았다.
**입력/CSV 사실.** 인계된 모델 inventory는 729 nodes/676 S4, 평판 10×10,
두께 0.5, `E=2.1e11`, `nu=.3`, `rho=2700`, 외곽 6 DOF 고정이다.
INP 끝부분에서 section·material·BC와 node 2를 담은 Set-1의 각 방향
`(-100000,-100000,-100000)` CLOAD, dynamic/step 옵션을 직접 대조했다.
CSV를 독립 집계하여 909 rows, 101 frames, 9 labels
`[2,21,22,69,70,165,309,442,586]`, 최대 `|U3|=4.91895989e-5`를 확인했다.
Frame은 increment 0–100/time 0–10, instance는 `PART-1-1`이고 비교 성분은 U/UR다.
V/A/energy/reaction은 이 CSV에 없다.
**계산/추론.** `max|U3|/t=9.83791978e-5`이므로 관측 횡변위는 작은 편이다.
메인이 동일 node/connectivity map을 대조한 [eigen reference](<../../reference/shellNL-eigen-meshfine/shellNL-eigen-meshfine eigenvalues.txt>)의 `f1=74.567 cycles/input-time`을
사용하면 `T1≈0.01341076 input-time`, `dt/T1=7.4567`이다. 이 f1은 이번 조사에서
재계산하지 않았다. SI 단위 선언은 확인되지 않아 Hz로 단정하지 않는다.
0.1 간격 시계열은 이 첫 모드 주기조차 해상하지 못하며 Nyquist 주파수도
`5 cycles/input-time`뿐이다. 기존 CSV 일치가 transient phase 정확도나 dt 수렴의 근거가 될 수 없다.
중앙 U3는 t=.1의 `-4.91895989e-5`와 t=.2의 `-7.04349895e-6`처럼 교대로 변동하며
감쇠하는 양상이므로 작은 변위라는 이유로 quasi-static 결과라고 분류하지 않는다.
`NLGEOM=YES`와 작은 횡변위만으로 모든 회전 크기를 단정하지 않되, 이 사례가 큰 회전
관성항을 충분히 자극한다는 evidence는 없다. Reference의 기존 `U1/U2/U3` blocking,
`UR1/UR2/UR3` warning-only 분류를 보존한다. Numerical Review는 이 분류와
[공통 tolerance 정책](../TOLERANCE.md) 안에서 구체적인 family와 mapping을 확정한다.
## 6. 독립 검증 후보 및 공백
아래는 **검증 설계 후보**이며 실행·통과 기록이 아니다. 허용오차와 영속 schema는 정하지 않는다.
| ID | 후보 evidence | 검출할 오류/한계 |
| --- | --- | --- |
| HHT-E01 | 선형 SDOF 자유진동 `q=q0 cos(omega t)+(v0/omega)sin(omega t)`, `omega=sqrt(k/m)` | U/V/A 위상·진폭, 초기 가속도·단위 |
| HHT-E02 | alpha=0 무감쇠 선형 자유진동의 Newmark 비교와 `E=(mv²+kq²)/2` | alpha 부호, 운동학 update, 선형 에너지 보존; 비선형 보존으로 확대 금지 |
| HHT-E03 | Step force, zero U/V: `q=(F/k)(1-cos(omega t))`, `a(0+)=F/m`; 별도 smooth forced case | STEP/RAMP 혼동, 0+/old force, 외력 weighting; 불연속 onset과 smooth 구간 수렴을 분리 |
| HHT-E04 | 독립 3×3 amplification matrix/주파수 sweep, alpha=0 및 음수 alpha | 저주파 위상오차와 고주파 algorithmic damping; 물리 damping과 분리 |
| HHT-E05 | 같은 종단시각에서 h,h/2,h/4 및 충분히 수렴한 nonlinear solve | 이산화 수렴과 Newton 수렴 분리; smooth 문제의 2차 거동 후보 |
| HHT-E06 | `M=diag(m,0)`, coupled symmetric K에서 대수좌표 제거한 SDOF와 full solve 대조; 일관/불일관 초기조건 | mass-null 좌표, drilling 부하, 임의 epsilon mass 도입, singular algebraic block |
| HHT-E07 | Shell 총질량·rigid translation energy·director drilling null·좌표회전 공변성; consistent/lumped 각각 공간 수렴 | 질량 구성·moment 보존·index/mapping; eigen 오차와 time error 분리 |
| HHT-E08 | 독립 nonlinear oscillator manufactured force와 residual directional derivative; 큰 회전 자유운동/forced shell의 h 수렴·work/energy/momentum | nonlinear weighting, tangent 누락, 관성 좌표 변환; HHT에 exact nonlinear energy conservation을 요구하지 않음 |
| HHT-E09 | 원본 CSV time/instance/node/component 결정적 비교 및 중복·누락·nonfinite 음성 사례 | reference projection integrity; 다른 솔버 내부 방식 동일성은 증명하지 않음 |
| HHT-E10 | S9의 공개 1-element HHT 검증 input/hand-derived U/V/A 절차를 참고해 독립 재현 | 알려진 이산 단계의 arithmetic oracle; vendor rounded table을 tolerance나 일반 해석 정답으로 사용하지 않음 |
**미해결 owner 항목.** Requirement/main: 지원 element/비선형 범위·기본 계수·fixed dt 및
실패 정책·물리 감쇠/초기조건 범위. Formulation: force weighting·initial consistency·
mass-null/drilling·finite rotation inertia. I/O: U/V/A와 frame 0·reaction의 시간/좌표 의미.
Numerical Review: nonlinear convergence와 time convergence의 판정·reference 비교량.
원논문 전문의 정리 조건 대조는 추가 근거 후보이며 이번 research 완료를 원논문 증명
전체 검토로 표시하지 않는다. 외부 solver, build/test, reference 생성은 실행하지 않았다.
## 출처와 열람 범위
모든 web source의 `accessed: 2026-09-22`. ID는 본문에서 사용한 안정적인 locator다.
| ID | 서지/URL 및 정확한 위치 | 적용 한계 |
| --- | --- | --- |
| S1 | Hilber, H.M., Hughes, T.J.R., Taylor, R.L. (1977), *Improved numerical dissipation for time integration algorithms in structural dynamics*, Earthquake Engineering & Structural Dynamics 5, 283–292. [DOI:10.1002/eqe.4290050306](https://doi.org/10.1002/eqe.4290050306), Abstract/Article Information | 원논문 서지·초록 확인, 전문 미열람 |
| S2 | Sandia National Laboratories, *Sierra/SM User Manual 5.20*, [§4.11.1.3 HHT Parameters](https://www.sandia.gov/files/sierra/SM_Users_5_20/main/implicit/integration.html) | 결합 계수·Newmark 한계 교차 확인; Sandia 기본값을 FESA에 도입하지 않음 |
| S3 | OpenSees, [§3.2.6.7 Hilber-Hughes-Taylor Method](https://opensees.github.io/OpenSeesDocumentation/user/manual/analysis/integrator/HHT.html), Notes/Theory | 선형 안정성 범위와 shifted alpha; 변환 설명 부호 충돌 및 nonlinear force 평가 변형에 주의 |
| S4 | Dassault Systèmes, Abaqus 2025, [*DYNAMIC](https://docs.software.vt.edu/abaqusv2025/English/SIMACAEKEYRefMap/simakey-r-dynamic.htm), Optional parameters/Data line for a transient dynamic analysis | 공개 keyword 의미만 |
| S5 | Dassault Systèmes, Abaqus 2025, [Implicit Dynamic Analysis Using Direct Integration](https://docs.software.vt.edu/abaqusv2025/English/SIMACAEANLRefMap/simaanl-c-dynamic.htm), Table 1/Default Amplitude for Loads/Initial Conditions | 공개 기본값·하중·초기조건 의미만 |
| S6 | Dassault Systèmes, Abaqus 2025, [*STEP](https://docs.software.vt.edu/abaqusv2025/English/SIMACAEKEYRefMap/simakey-r-step.htm), AMPLITUDE/INC/NLGEOM | 입력 의미만 |
| S7 | Dassault Systèmes, Abaqus 2025, [*CLOAD](https://docs.software.vt.edu/abaqusv2025/English/SIMACAEKEYRefMap/simakey-r-cload.htm), AMPLITUDE/FOLLOWER | 입력 의미만 |
| S8 | Simo, J.C., Tarnow, N., Wong, K.K. (1992), *Exact energy-momentum conserving algorithms and symplectic schemes for nonlinear dynamics*, CMAME 100, 63–116. [DOI:10.1016/0045-7825(92)90115-Z](https://doi.org/10.1016/0045-7825(92)90115-Z), Abstract | 비선형 보존 한계의 1차 논문 근거; 대체 integrator 채택 아님 |
| S9 | Idaho National Laboratory, MASTODON, [Hilber-Hughes-Taylor (HHT) Time Integration Verification](https://mastodon.inl.gov/sqa/v_and_v/kernels/time_integration/hht.html), Problem Statement and Results/Complete Input File | 재현 가능한 검증 설계 후보; 외부 solver 실행하지 않음 |