Table of Contents
모델링 및 시뮬레이션 엔지니어링 시스템은 엔지니어링 분석에 필수적인 작업입니다. NumPy와 SciPy와 같은 파이썬 라이브러리를 사용하여 수치 계산 및 시스템 분석을위한 강력한 도구를 제공함으로써 이러한 프로세스를 단순화합니다. 이 문서는 이러한 라이브러리를 사용하여 모델 및 시뮬레이션 엔지니어링 시스템에 기본 방법을 소개합니다.
환경 설정
시작하려면 이미 사용할 수없는 경우 필요한 라이브러리를 설치하십시오. NumPy 및 SciPy를 설치하기 위해 pip 명령을 사용하십시오.
피프는 numpy scipy를 설치
모델링 엔지니어링 시스템
엔지니어링 시스템은 종종 차별식 방정식 또는 전송 기능과 같은 수학 모델을 사용하여 표현 될 수 있습니다. NumPy는 매트와 벡터를 만들기위한 도구를 제공합니다. SciPy는 방정식 및 시뮬레이션 시스템 응답을 해결하기위한 기능을 제공합니다.
예를 들어, 간단한 대량 스프링 댐퍼 시스템은 차분한 방정식으로 모델링 할 수 있습니다.
m * x'' + c * x' + k * x = 0
시스템
SciPy의 통합 모듈은 서로 다른 방정식을 핵으로 해결 할 수 있습니다. 'solve ivp' 함수는 일반적으로이 목적을 위해 사용됩니다. 다음은 질량 스프링 - 댐퍼 시스템을 시뮬레이션하는 예입니다.
함수로 시스템을 정의하십시오:
np로 numpy]
scipy.integrate import ivp에서
def mass spring damper(t, y, c, k):
반환 [y[1], - (c / m) * y[1] - (k / m) * y[0]]
초기 조건 및 매개 변수 설정:
initial conditions = [x0, v0]
t span = [0, 10]
해결사에게 전화:
해결 = 해결 ivp(mass spring damper, t span, initial conditions, args=(c, k))
결과 분석
시뮬레이션 후, 시스템의 응답을 시간으로 플로팅하여 결과를 분석합니다. Matplotlib와 같은 라이브러리를 사용하여 데이터를 시각화하십시오.
import matplotlib.pyplot 를 plt]로 변경
plt.plot(solution.t, solution.y[0])]
plt.xlabel('Time (s)')]
plt.ylabel('Displacement')]
plt.show()]