모델링 및 시뮬레이션 엔지니어링 시스템은 엔지니어링 분석에 필수적인 작업입니다. 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()]