MATLAB을 이용한 유한요소 programming
- 최초 등록일
- 2012.01.19
- 최종 저작일
- 2009.12
- 32페이지/ 한컴오피스
- 가격 20,000원
소개글
MATLAB 소스가 그대로 있어서 MATLAB에서 바로 사용 가능합니다.
소스마다 주석이 달려 있고요. 설명도 추가 했습니다.
목차
목차
1. 서론
2. 사용 모델
◉ 설명
◉ node 번호
◉ 요소 번호
3. MATLAB 소스 설명
◉ point 설정
◉ 요소의 point 번호설정과 증가된 point 설정
◉ 강성행렬(K)의 크기 설정
◉ shape function 설정
◉ D행렬 계산
◉ Gauss integration 설정
◉ 요소의 포인트 정리
◉ 적분 포인트 대입 (Jacobian 행렬계산)
◉ B행렬 계산
◉ 강성행렬(K)계산
◉ 강성행렬(K)의 조합
◉ 경계조건 입력
◉ U, F행렬 생성
◉ 연립방정식 풀이
◉ 그래프 그리기
◉ 필요 없는 변수 삭제
4. MATLAB 결과 확인
◉ 요소의 강성행렬
◉ 조합된 강성행렬(K)
◉ U, F 행렬
◉ 그래프 결과
◉ point45의 정보
5. ADINA 해석
◉ Element Group 설정
◉ Material 설정
◉ point 입력
◉ Mesh Density 설정
◉ Mesh 생성
◉ 경계조건 입력
◉ 결과 확인
6. VisualFEA 해석
◉ Project Setup
◉ 2D Mesh 설정
◉ 3차원 Mesh 추가
◉ 재료 물성치 입력
◉ 경계조건 입력
◉ 적분점 개수 입력
◉ 결과 확인
7. 검토 & 후기
8. 참고문헌
본문내용
K=fix(K*10^2)/10^2; %소수점2자리 미만은 버림.
fprintf(`\n강성핼렬 K는 %g node, 가우스포인트 %g 개로 구하여짐.\n`, node,gauss_num_r*gauss_num_s*gauss_num_s)
nu=3; %표시 할 자리 숫자.(계산에는 영향 없음.)
fprintf(`(%g자리까지 표시함.) K=\n`,nu)
disp(vpa(K,nu)) %K를 nu자리까지 표시
end
? 3차원이므로 9개의(33) 행렬 요소가 나란히 이동한다. 9개의 행렬 요소 중 처음에 있는 행렬 요소를 기준으로 하나씩 옮겼다.
? i, j는 각각 행과 열의 node 위치를 알리는 변수 이다.
? 기준이 되는 행렬의 요소는 (3*i-2)행(3*j-2)열이다.
? ii, jj는 9개의 행렬 요소를 나란히 이동하기 위한 변수이다.
? 경계조건 입력
%-------------- 경계조건 입력 ----------------
fix_p=[1 16 31 6 21 36 11 26 41]; %3방향 고정점
force_p=[45]; %힘이 작용하는 포인트
force_d=[0 -1000 0]; %힘이 작용하는 방향, 크기
syms U
syms F
si_fix_p=size(fix_p);
? 고정점, 힘의 크기, 방향 등을 저장한다.
? U와 F는 계산 과정동안 심볼로 구성될 행렬 이므로, 심볼 선언을 한다.
? U와 F를 구성하기 위하여 고정점의 개수를 저장해 둔다.
참고 자료
" MATLAB 입문과 활용: MATLAB 4.0버전부터 6.0까지/ 김용수 저
서울: 문운당, 2006.
" (멀티미디어 강의)유한요소법= Finite element method/ 이재영 저.
4th ed. / Australia : Thomson, 2007
" A first course in the finite element method / Daryl L. Logan
2판. / 서울: 높이높이, 2005.