• SEARCH

    통합검색
세모계
    • Dark Mode
    • GNB Always Open
    • GNB Height Maximize
    • Color
    • Brightness
    • SINCE 2015.01.19.
    • 세모계 세모계
    •   SEARCH
    • 세상의 모든 계산기
      • 자유(질문) 게시판
      • 계산기 뉴스/정보
      • 수학, 과학, 공학 이야기
      • 세모계 : 공지 게시판
        • 구글 맞춤검색
    • TI
    • CASIO
    • HP
    • SHARP
    • 일반(쌀집) 계산기
    • 기타계산기
    • by OrangeDay
  • 세상의 모든 계산기 수학, 과학, 공학 이야기
    • 세상의 모든 계산기 수학, 과학, 공학 이야기 수학 ()
    • 고정점 반복법, Fixed Point Iteration (비선형 방정식의 해를 찾는 방법)

    • Profile
      • 세상의모든계산기
      • 2024.10.14 - 18:25 2024.10.14 - 13:39 1011 2

    시행착오법을 통해 비선형 방정식의 해를 찾는 방법은 여러 가지가 있으며,

    그 중 하나가 "고정점 반복법" (Fixed Point Iteration)입니다. 

    image.png

    고정점 반복법 (Fixed Point Iteration)

     

    - 정의: 함수 \( f(D) = 0 \)의 해를 구하기 위해, 반복적으로 특정 형식의 함수 \( g(D) \)를 설정하여 \( D_{\text{new}} = g(D) \)의 형태로 업데이트하는 방법입니다.
    - 용도: 비선형 방정식, 유체 유동 해석, 공학적 문제 등 다양한 분야에서 해를 찾기 위해 사용됩니다.

     

    기타 관련 방법

     

    - 뉴턴-랩슨 방법 (Newton-Raphson Method):

      - 기울기를 이용하여 해를 찾아가는 방법으로, 일반적으로 더 빠른 수렴 속도를 제공합니다. 하지만 초기값에 대한 의존성이 큽니다.

    - 바이섹션 방법 (Bisection Method):

      - 함수의 값을 이용하여 중간값을 반복적으로 좁혀가는 방법입니다. 안정적이지만 수렴 속도는 상대적으로 느립니다.

    - 이분법 (Secant Method):

      - 두 점의 기울기를 이용해 해를 찾는 방법으로, 뉴턴-랩슨 방법의 대안으로 사용할 수 있습니다.

     

    각 방법은 특정 상황에서의 장단점이 있으므로 문제에 맞는 방법을 선택하는 것이 중요합니다.

     


     

    고정점 반복법의 예시 (2차방정식)

     

     

    2차 방정식 예제로 주어진 방정식이 다음과 같다고 가정하겠습니다:

    \[
    x^2 - 3x - 4 = 0
    \]

    이 방정식을 고정점 형태로 변형하여 해결해 보겠습니다.

     

    1. 방정식 변형

     

    방정식을 고정점 형태로 변형하려면 \( x \)에 대해 다시 정리해야 합니다. 예를 들어, 위의 방정식에서 \( x \)에 대한 식으로 바꿉니다:

    \[
    x = \frac{3x + 4}{x} = 3 + \frac{4}{x}
    \]

     

    이제 고정점 함수 \( g(x) \)를 정의할 수 있습니다:

    \[
    g(x) = 3 + \frac{4}{x}
    \]

     

    2. 초기값 설정

     

    고정점 반복법을 시작하기 위해 초기값을 설정합니다. 예를 들어, \( x_0 = 5 \)로 시작하겠습니다.

     

    3. 반복 계산

     

    이제 반복적으로 \( x \) 값을 업데이트합니다:

    \[
    x_{\text{new}} = g(x)
    \]

    1. 첫 번째 반복:
       \[
       x_1 = g(x_0) = 3 + \frac{4}{5} = 3 + 0.8 = 3.8
       \]

    2. 두 번째 반복:
       \[
       x_2 = g(x_1) = 3 + \frac{4}{3.8} \approx 3 + 1.0526 \approx 4.0526
       \]

    3. 세 번째 반복:
       \[
       x_3 = g(x_2) = 3 + \frac{4}{4.0526} \approx 3 + 0.9875 \approx 3.9875
       \]

    4. 네 번째 반복:
       \[
       x_4 = g(x_3) = 3 + \frac{4}{3.9875} \approx 3 + 1.0031 \approx 4.0031
       \]

    이런 식으로 계속 반복하여 \( x_n \)이 수렴할 때까지 진행합니다.

     

    4. 수렴 확인

     

    반복을 계속 진행하다 보면, \( x \) 값이 안정화되어 수렴하게 됩니다.

    예를 들어, 수렴 조건으로 \( |x_{\text{new}} - x_{\text{old}}| < \epsilon \) (여기서 \( \epsilon \)은 설정한 허용 오차) 를 사용할 수 있습니다.

     

    * g(x) 함수에 따라 수렴하지 않고 발산할 수도 있습니다. 

    수렴 조건:

    • |g'(x)| < 1 인 구간에서 수렴이 보장됩니다.
    • 이는 연속 반복에서 점들이 서로 가까워짐을 의미합니다.
    Attached file
    image.png 6.4KB 38
    이 게시물을..
    N
    0
    0
    • 세상의모든계산기 25
      세상의모든계산기

      계산기는 거들 뿐
      혹은
      계산기를 거들 뿐

    세상의모든계산기 님의 최근 글

    정적분 구간에 미지수가 있고, solve 를 사용할 수 없을 때 그 값을 확인하려면? 25 4 2026 04.10 높아질수록 좁아지는 시야에 대하여 - written by ChatGPT 5399 2026 02.12 내가 올해 몇살이더라? (내 나이 계산기) 4834 2026 02.11 AGI 자기 거버넌스 구조와 인간-AGI 관계 모델 (written by GEMINI & GPT) 5589 1 2026 01.30   AI 시대, '기본소득'을 넘어 '기여소득'으로: 새로운 사회 계약을 향한 제언 - Written by Gemini 4934 1 2026 01.28

    세상의모든계산기 님의 최근 댓글

    뉴턴-랩슨 적분 방정식 시각화 v1.0 body { font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; display: flex; flex-direction: column; align-items: center; background: #f8f9fa; padding: 40px 20px; margin: 0; color: #333; } .container { background: white; padding: 40px; border-radius: 20px; box-shadow: 0 15px 35px rgba(0,0,0,0.08); max-width: 900px; width: 100%; } header { border-bottom: 2px solid #f1f3f4; margin-bottom: 30px; padding-bottom: 20px; } h1 { color: #1a73e8; margin: 0 0 10px 0; font-size: 1.8em; } p.subtitle { color: #5f6368; margin: 0; font-size: 1.1em; } .equation-box { background: #f1f3f4; padding: 15px; border-radius: 10px; text-align: center; margin-bottom: 30px; font-size: 1.3em; } canvas { border: 1px solid #e0e0e0; border-radius: 12px; background: #fff; width: 100%; height: auto; display: block; } .controls { margin-top: 30px; display: flex; gap: 15px; align-items: center; justify-content: center; flex-wrap: wrap; } button { padding: 12px 25px; border: none; border-radius: 8px; background: #1a73e8; color: white; cursor: pointer; font-weight: 600; font-size: 1em; transition: all 0.2s; box-shadow: 0 2px 5px rgba(26,115,232,0.3); } button:hover { background: #1557b0; transform: translateY(-1px); box-shadow: 0 4px 8px rgba(26,115,232,0.4); } button:active { transform: translateY(0); } button.secondary { background: #5f6368; box-shadow: 0 2px 5px rgba(0,0,0,0.2); } button.secondary:hover { background: #4a4e52; } .status-badge { background: #e8f0fe; color: #1967d2; padding: 8px 15px; border-radius: 20px; font-weight: bold; font-size: 0.9em; } .explanation { margin-top: 40px; padding: 25px; background: #fff8e1; border-left: 5px solid #ffc107; border-radius: 8px; line-height: 1.8; } .explanation h3 { margin-top: 0; color: #856404; } .math-symbol { font-family: 'Times New Roman', serif; font-style: italic; font-weight: bold; color: #d93025; } .code-snippet { background: #202124; color: #e8eaed; padding: 2px 6px; border-radius: 4px; font-family: monospace; } 📊 Newton-Raphson 적분 방정식 시뮬레이터 미분적분학의 기본 정리(FTC)를 이용한 수치해석 시각화 목표 방정식: ∫₀ᴬ (2√x) dx = 20 을 만족하는 A를 찾아라! 계산 시작 (A 추적) 초기화 현재 반복: 0회 💡 시각적 동작 원리 (Newton-Raphson & FTC) Step 1 (오차 측정): 현재 A까지 쌓인 파란색 면적이 목표치(20)와 얼마나 차이나는지 계산합니다. Step 2 (FTC의 마법): 면적의 변화율(미분)은 그 지점의 그래프 높이 f(A)와 같습니다. Step 3 (보정): 다음 A = 현재 A - (면적 오차 / 현재 높이) 공식을 사용하여 A를 이동시킵니다. 결론: 오차를 현재 높이로 나누면, 오차를 메우기 위해 필요한 가로 길이(ΔA)가 나옵니다. 이 과정을 반복하면 정답에 도달합니다! const canvas = document.getElementById('graphCanvas'); const ctx = canvas.getContext('2d'); const iterText = document.getElementById('iterText'); // 수학 설정 const targetArea = 20; const f = (x) => Math.sqrt(x) * 2; // 피적분 함수 f(x) = 2√x const F = (x) => (4/3) * Math.pow(x, 1.5); // 정적분 결과 F(x) = ∫ 2√x dx = 4/3 * x^(3/2) let A = 1.5; // 초기값 let iteration = 0; let animating = false; // 그래프 드로잉 설정 const scale = 50; const offsetX = 60; const offsetY = 380; function drawGrid() { ctx.strokeStyle = '#f1f3f4'; ctx.lineWidth = 1; ctx.beginPath(); for(let i=0; i 2026 04.11 참값 : A = ±2√5 근사값 : A≈±4.472135954999579392818347   2026 04.10 fx-570 ES 입력 결과 초기값 입력   반복 수식 입력    반복 결과       2026 04.10 파이썬 코드 검증 결과 초기값: 5.0 반복 1회차: 4.5000000000 반복 2회차: 4.4722222222 반복 3회차: 4.4721359558 반복 4회차: 4.4721359550 반복 5회차: 4.4721359550 초기값: 10.0 반복 1회차: 6.0000000000 반복 2회차: 4.6666666667 반복 3회차: 4.4761904762 반복 4회차: 4.4721377913 반복 5회차: 4.4721359550 2026 04.10 감사합니다. 주말 잘 보내세요. 2026 03.06
    글쓴이의 서명작성글 감추기 

    댓글2

    • Profile 0
      세상의모든계산기
      2024.10.14 - 13:41 2024.10.14 - 13:40 #49854

      TI-nspire 에서 구현


      image.png

       

      그래프로 확인

      image.png

      Attached file
      image.png 47.4KB 24 image.png 47.9KB 25 fixed_point_iteration.tns 5.2KB 25
      댓글
    • 1
      Profile 0
      세상의모든계산기
      2024.10.14 - 14:02 2024.10.14 - 13:49 #49863

      g(x) 형식은 여러가지가 될 수 있습니다.


      이번엔 x = g(x) = 'x의 2차식' 꼴로 설정해 보겠습니다. 

      image.png

      수렴하긴 했는데... x=4 를 구하고 싶었지만, x=-1이 구해졌습니다. 

      그렇다고 x0=5 으로 시작하면 발산해버리고 맙니다. 

       

      x=4가 구해지지 않는 것은 그래프 모양으로 확인할 수 있습니다. 

      image.png

      앞서 보았던 분수함수와 달리 2차함수는 g(x) 값이 y=x 의 아래 있기 때문에 x가 더 작은 값으로 이동해 갑니다. 

       

      따라서

       

      g(x)|x<-1 는 -1로 

      g(x)|-1<x<4 는 -1로 

      g(x)|4<x ∞ 로 이동하게 되어

      x=4 로 수렴하지는 못합니다. 

       

      Attached file
      image.png 51.2KB 21 image.png 52.2KB 20
      댓글
    • 댓글 입력
    • 에디터 전환
    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • 목록
      view_headline
    2
    × CLOSE
    전체 수학 64 확률통계 18 공학 13 물리학 2 화학 3 생물학 재무금융 10 기타 2
    기본 (0) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    등록된 글이 없습니다.
    • 세상의 모든 계산기 수학, 과학, 공학 이야기
    • 세상의모든계산기
    • 사업자등록번호 703-91-02181
    • 세모계 all rights reserved.