Newton

Newton

newton.rb — 뉴턴(Newton)의 방법으로 비선형 연립 방정식 시스템 f = 0을 풀어요. 이 프로그램은 BigDecimal에 의존하지 않아요.

출처: Ruby 3.3 API

본문

호출 방법은 다음과 같아요.

  n = nlsolve(f,x)
where n is the number of iterations required,
      x is the initial value vector
      f is an Object which is used to compute the values of the equations to be solved.

n은 필요한 반복 횟수, x는 초기 값 벡터, f는 풀려는 방정식들의 값을 계산하는 데 쓰이는 객체예요.

f는 다음 메서드들을 제공해야 해요.

  • f.values(x)x에서 모든 함수의 값을 돌려줘요.
  • f.zero — 0.0을 돌려줘요.
  • f.one — 1.0을 돌려줘요.
  • f.two — 2.0을 돌려줘요.
  • f.ten — 10.0을 돌려줘요.
  • f.eps — 두 값이 같은지 판단하는 데 쓰이는 수렴 기준(엡실론 값)을 돌려줘요. |a-b| < epsilon이면 두 값은 같다고 간주돼요.

종료 시점에 x는 해(solution) 벡터가 돼요.

Public Instance Methods

nlsolve(f,x)

연립 방정식 시스템을 뉴턴의 방법으로 풀어요. Newton도 함께 보세요.

더 알아보기

  • 뉴턴 방법의 수치 해석 구현으로 쓰이는 Jacobian(야코비 행렬 계산) 문서도 함께 보세요.