← Home/matter

길이가 다른 15개의 진자 — 주기 차이가 파동 패턴을 만든다

이 실험에 대해

단진자의 주기는 T = 2π√(L/g)로 길이에만 의존한다.15개의 진자가 각기 다른 길이(80px ~ 276px)를 가지면 출발은 같지만 각자 다른 속도로 진동한다. 파동, 수렴, 분산 패턴이 주기적으로 나타난다.

핵심 코드

// 진자마다 다른 길이
const len = BASE_LENGTH + i * LENGTH_STEP

// 같은 시작 각도로 출발
const angle = -Math.PI / 5
const bx = pivotX + Math.sin(angle) * len
const by = pivotY + Math.cos(angle) * len

Constraint.create({
  pointA: { x: pivotX, y: pivotY },
  bodyB: ball,
  length: len,       // 주기를 결정하는 핵심 값
  stiffness: 1,
  damping: 0.0,      // 에너지 손실 없음
})