scipy.integrate
사용하기
scipy.integrate
모듈은 수치적분과 상미분방정식(ODE)을 푸는 함수를 제공합니다.
주로 활용되는 작업은 다음과 같습니다.
- 정적분을 계산해야 할 때
- 해석적(정확한) 원시함수가 없는 함수를 적분하고 싶을 때
- ODE(상미분방정식) 계를 풀 때
scipy.integrate
를 사용하기 위해서는 아래와 같이 integrate
모듈을 불러와야 합니다.
NumPy와 SciPy integrate 임포트
import numpy as np from scipy import integrate
예제 1: quad
로 정적분
정적분을 계산할 때 quad
함수를 사용할 수 있습니다.
0에서 π까지 sin(x)의 정적분
# 적분할 함수 f = lambda x: np.sin(x) # 0부터 π까지 적분 val, err = integrate.quad(f, 0, np.pi) print("적분값:", val) print("추정 오차:", err)
설명:
quad
는 적분값과 오차 추정치를 반환합니다- 매끄럽고 잘 거동하는 함수에 유용합니다
예제 2: solve_ivp
로 ODE 풀기
ODE를 풀 때 solve_ivp
함수를 사용할 수 있습니다.
ODE 풀기
# 미분 방정식(도함수) 함수 def dydt(t, y): return -2 * y # 시간 구간과 평가 지점 t_span = (0, 3) t_eval = np.linspace(*t_span, 100) # ODE 풀기 sol = integrate.solve_ivp(dydt, t_span, y0=[1.0], t_eval=t_eval) print("처음 5개 y 값:", sol.y[0][:5])
설명:
solve_ivp
는 ODE의 초기값 문제를 풉니다t_span
은 적분 구간입니다y0
는 초기 조건입니다
핵심 정리
quad()
: 주어진 구간에서 단변수 함수를 적분합니다.solve_ivp()
: 미분방정식의 초기값 문제를 풉니다.- SciPy의 적분 루틴과 호환되도록 함수와 배열 정의에 NumPy를 사용할 수 있습니다.
Quiz
0 / 1
scipy.integrate
모듈의 주요 용도는 무엇인가요?
대수식의 기호적 적분을 수행
선형대수 문제를 해결
수치 적분과 상미분방정식(ODE) 풀이
시뮬레이션을 위한 난수 생성
학습 자료
AI 튜터
디자인
업로드
수업 노트
즐겨찾기
도움말