FEM(Finite Element Method)은 다양한 재료 유형 모델링, 복잡한 형상 테스트, 설계의 작은 영역에 작용하는 국소 효과 시각화와 같은 다양한 작업에 사용됩니다. 기본적으로 큰 공간 영역을 "유한 요소"라고 하는 간단한 부분으로 나눕니다. 이러한 유한 요소를 모델링하는 간단한 방정식은 전체 영역을 모델링하기 위해 더 큰 방정식 시스템으로 수집됩니다.
matplotlib를 사용하여 2D FEM 결과를 플롯하려면 다음 단계를 수행할 수 있습니다. -
- 그림 크기를 설정하고 서브플롯 사이 및 주변 여백을 조정합니다.
- numpy를 사용하여 노드, 요소 및 노드 값 데이터 포인트를 생성합니다.
- 노드의 데이터 포인트를 전치합니다.
- tricontourf()를 사용하여 3D로 채워진 등고선 플롯 만들기 .
- 그림을 표시하려면 show()를 사용하세요. 방법.
예
import numpy as np import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True nodes = np.array([ [0.0, 0.0], [1.0, 0.0], [2.0, 0.5], [0.0, 1.0], [1.0, 1.0], [1.7, 1.3], [1.0, 1.7]]) elements = np.array([ [1, 2, 5], [5, 4, 1], [2, 3, 6], [6, 5, 2], [4, 5, 7], [5, 6, 7]]) values = [1, 2, 1, 2, 7, 4, 5] x, y = nodes.T plt.tricontourf(x, y, elements - 1, values, 12, cmap='copper') plt.show()
출력
다음 출력을 생성합니다.