Báo cáo pp pthh

Preview:

DESCRIPTION

tinh toan

Citation preview

BỘ GIÁO DỤC & ĐÀO TẠOTRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HCM

KHOA CƠ KHÍ CHẾ TẠO MÁY

BÁO CÁO MÔN HỌC

PHƯƠNG PHÁP PHẦN TỬ HỮU HẠN

GVHD: PGS. TS NGUYỄN HOÀI SƠN

HVTH: ĐỖ THẾ MẠNH - 10085204021

HVTH: NGUYỄN THỊ THANH HẢI – 007

LỚP: CAO HỌC CN-CTM 2010B

NỘI DUNG BÁO CÁO

II. PHƯƠNG PHÁP THỰC HIỆN

1. Cơ sở lý thuyết

2. Thực hiện tính toán

3. Kết quả tính toán

I. GIỚI THIỆU

III. CHƯƠNG TRÌNH MATLAB

IV. SO SÁNH VỚI KẾT QUẢ TÍNH BẰNG MATLAB

1. GIỚI THIỆU

BÀI 28:

1. Tính chuyển vị tại các nút.

2. Tính nội lực trong các phần tử.

3. Tính ứng suất trong các phần tử.

2. PHƯƠNG PHÁP THỰC HIỆN

Ứng dụng phương pháp phần tử hữu hạn để giải bài toán

Viết chương trình Matlab

So sánh kết quả với phần mềm Matlab

2. CƠ SỞ LÝ THUYẾT

)x(vpdxvqdx

dx

vdIE

2

1WU ii

x

x

x

x

2

2

2 l

0

l

0

Thế năng biến dạng đàn hồi của dầm chịu uốn:

0 0

2 2( ) 2 2

2 2

1 1 1. . . . . . . . .

2 2 2

l lx xe

x

A x A x

d v d vU E dAdx E y dAdx E I dx

dx dx

Năng lượng biến dạng trong một phân tử:

Công thực hiện biến dạng phần tử (e)

)x(vpdxvqW ii

x

x

l

0

Áp dụng phương pháp Rayleigh-Ritz ta có:

2. CƠ SỞ LÝ THUYẾT

22221111

x

x

x

x

2

2

2

MvFMvFdxvqdxdx

vdIE

2

1WU

2

1

2

1

Với v(x) = {N}.{d}

Sử dụng hàm nội suy Hermite cho phần tử 2 nút ta tìm được các hàm dạng:

( ) 2 30 1 2 3( )e x a a x a x a x ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

1 1 2 2 3 3 4 4. . . .e e e e e e e eN U N U N U N U v =

3 2 3 2 2 3 3 2

3 2 2 2 3 2

2 3 2 3 21, , ,

x x x x x x x xx

L L L L L L L L

{N}

2. CƠ SỞ LÝ THUYẾT

v’(x) = {B} .{d}

2'( ) '( ) '( )

TT T T T Tv x v x v x B d B d d B B d

0 0

1 1 1. . .

2 2 2

l lx xT T T T T

x xU E I d B B d dx d E I B B dx d d k d

là ma trận độ cứng của phần tử. 0

lx T

xk EI B B dxVới

2

60

2 2

350 0

2

36( 2 )

12 6 12 6

4 6 212(2 3 )( 2 )12 6

4

L

L LT

L sds

L L L

L L LEIL s L sk EI B B ds EI dsLLL

sym L

2. THỰC HIỆN TÍNH TOÁN

Bảng Index:

Node Dof Giátrị

2 3 -6

4 7 -10

Thành lập các ma trận độ cứng cho từng phần tử, dựa vào ma trận mã

hoá lắp ghép ma trận [k]

Bậc tự doPhần tử

1 2 3 4

1 1 2 3 42 3 4 5 63 5 6 7 84 7 8 9 105 9 10 11 12

Định nghĩa tải trọng nút

2. THỰC HIỆN TÍNH TOÁN

19200 4800 19200 4800 0 0 0 0 0 0 0 0

4800 1600 4800 800 0 0 0 0 0 0 0 0

19200 4800 38400 0 19200 4800 0 0 0 0 0 0

4800 800 0 3200 4800 800 0 0 0 0 0 0

0 0 19200 4800 38400 0 19200 4800 0 0 0 0

0 0 4800 800 0 3200 4800 800 0 0 0 0[ ]

0 0 0 0 19200 4800 38400 0 19200k

4800 0 0

0 0 0 0 4800 800 0 3200 4800 800 0 0

0 0 0 0 0 0 19200 4800 21600 3600 2400 1200

0 0 0 0 0 0 4800 800 3600 2400 1200 400

0 0 0 0 0 0 0 0 2400 1200 2400 1200

0 0 0 0 0 0 0 0 1200 400 1200 800

Ma trận độ cứng k sau khi lắp ghép 5 phần tử

3. KẾT QUẢ TÍNH TOÁN

Chuyển vị toàn cục sau khi tính toán:

0.0001 0.0001 0.0003 0.0003 0.0001 0.0001 0.0013

Node Dof Phảnlực (kN)

11 2.6538

2 0.6346

3 5 7.8846

5 9 6.9038

6 11 -1.4423

Phản lực tại các gối

3. KẾT QUẢ TÍNH TOÁN

Phầntử

Moment uốn Ứng suất uốn Lực cut Ứng suất cắt

1 2400x+400 600*10 x+100*10 2400 0.012.Q/tw

2 2880x-880 720*10 x -220*10 2880 0.0144.Q/tw

3 4320x-5384 1080*10 x -1346*10 4320 0.0216.Q/tw

4 -5760x+10000 -1440*10 x +2500*10 -5760 0.0288.Q/tw

5 1440x-3320 720*10 x -1660*10 1440 0.0072.Q/tw

6666666666

Phần tử Vị trí Giá trị chuyển vị

1 0 < x < 0.5 0.002x³+0.001x²

2 0.5 < x < 1.0 0.0024x³-0.0022x²+1.4987x-0.1248

3 1.0 < x < 1.5 0.0036x³-0.01346x²+0.0158x-0.0059

4 1.5 < x < 2.0 -0.0048x³+0.025x²-0.0425x+0.0234

5 2.0 < x < 3.0 0.0012x³-0.0083x²+0.0187x-0.0138

III. CHƯƠNG TRÌNH MATLAB• % Exercise 28• % ---------------------------------------------------------• % Variables descriptions• % k: element matrix• % kk: system matrix• % f: element vector• % ff: system vector• % uu: system displacements• % rr: system reactions• % nel: number of elements in system• % nnel: number nodes of element• % ndof: number of dofs per node• % nnode: total number of nodes in system• % sdof: total system dofs

III. CHƯƠNG TRÌNH MATLAB

• % edof: total number of dofs per element

• % gcoord(i,j): coordinate values of each node

• % where i: node number; j: x or y

• % index: a system dofs vector associated with each element i-th

• % bcdof: a vector containing dofs associated with boundary conditions

• % bcval: a vector containing boundary condition values associated with the dofs in

bcdof

• % nodes(iel,j): nodal connectivity for each elementwhere iel: i-th element; j:

connected nodes

• % eleng: element length (chieu dai phan tu)

III. CHƯƠNG TRÌNH MATLAB

• % Nhap du lieu cho cac tham so dieu khien

• clearall; clc; close all; format long;

• nel=input('Nhap so phan tu cua he:')

• nnel=input('Nhap so nut tren moi phan tu:')

• ndof=input('Nhap so bac tu do tai moi nut:')

• nnode=input('Nhap so tong so nut cua he:')

• sdof=nnode*ndof;

• edof=nnel*ndof;

• eleng1=0.5; eleng2=1; E=2*10^8; I=10^-6; EI=E*I;

III. CHƯƠNG TRÌNH MATLAB

• % --------------------------------------

• % Nhap gia tri toa do node

• gcoord(1)=0; gcoord(2)=0.5; gcoord(3)=1; gcoord(4)=1.5; gcoord(5)=2;

• gcoord(6)=3;

• % --------------------------------------

•  

• % Nhap du lieu su ket noi nut cho moi phan tu

• for iel=1:nel;

• nodes(iel,1)=iel;

• nodes(iel,2)=iel+1;

• end

• % ---------------------------------------------

III. CHƯƠNG TRÌNH MATLAB

• % Nhap du lieu dieu kien bien (input data for boundary conditions)

• bcdof(1)=1; % bac tu do thu 1 bi rang buoc (chuyen vi)

• bcval(1)=0;

• bcdof(2)=2; % bac tu do thu 2 bi rang buoc (goc xoay)

• bcval(2)=0;

• bcdof(3)=5; % bac tu do thu 5 bi rang buoc (chuyen vi)

• bcval(3)=0;

• bcdof(4)=9; % bac tu do thu 9 bi rang buoc (chuyen vi)

• bcval(4)=0;

• bcdof(5)=11; % bac tu do thu 11 bi rang buoc (chuyen vi)

• bcval(5)=0;

III. CHƯƠNG TRÌNH MATLAB

• % khoi tao cac ma tran va vec to• ff=zeros(sdof,1);• kk=zeros(sdof,sdof);• uu=zeros(sdof,1);• index=zeros(edof,1);• % -------------------------------------------------------------- • % Nhap tai phan bo va tai tap tru tai moi nut• f(3)=-6; • f(7)=-10;• f(9)=-6;• f(10)=-1;• f(11)=-6;• f(12)=1;

III. CHƯƠNG TRÌNH MATLAB

• % Tinh toan ma tran, vector phan tu va lap rap chung vao ma tran toan cuc

• for iel=1:nel;

• nl=nodes(iel,1); % Toa do nut ben trai cua phan tu i-th

• nr=nodes(iel,2); % Toa do nut ben phai cua phan tu i-th

• xl=gcoord(nl); % Toa do ben trai truc x cua phan tu i-th

• xr=gcoord(nr); % Toa do ben phai truc x cua phan tu i-th

• eleng=xr-xl; % chieu dai phan tu

• if iel==5

• eleng=eleng2;

• else

• eleng=eleng1;

• end

• index=bangmahoa_1D(iel,nnel,ndof); % chuong trinh con bang ma hoa

• k=(EI/(eleng^3))*[12 6*eleng -12 6*eleng; 6*eleng 4*eleng^2 -6*eleng 2*eleng^2; -12 -6*eleng 12 -6*eleng; 6*eleng 2*eleng^2 -6*eleng 4*eleng^2];

 

• [kk,ff]=lapghepmatran_vector(kk,ff,f,k,index);

 

• K=kk % Ma tran do cung cua he

• F=ff % Vector luc cua he

• end

• % Khu dieu kien bien

• [kk,ff]=khu_dkb(kk,ff,bcdof,bcval);

• % ----------------------------------------------------------------

III. CHƯƠNG TRÌNH MATLAB

III. CHƯƠNG TRÌNH MATLAB

• % Tim chuyen vi cua he• uu=inv(kk)*ff;• displacements=uu;• jj=1:sdof; format• displacements=[jj' displacements]• %-----------------------------------------------------------------

 • % Tim phan luc tai cac goi• prescribedDof=[1;2;5;9;11]; % Bac tu do bi rang buoc• rr=K*uu;• reactions=rr(prescribedDof);• disp('reactions')• [prescribedDof reactions]

CÁC CHƯƠNG TRÌNH CON:

• Chương trình con bảng mã hoá• function index=bangmahoa_1D(iel,nnel,ndof)• % Muc dich: • % Tinh toan bac tu do cua he tuong ung voi moi phan tu trong bai

toan 1-D• edof=nnel*ndof;• start=(iel-1)*(nnel-1)*ndof;• for iel=1:edof;• index(iel)=start+iel;• end

CÁC CHƯƠNG TRÌNH CON:

• Chương trình con lắp ghép ma trận, vector phần tử vào hệ• function [kk,ff]=lapghepmatran_vector(kk,ff,f,k,index)• % Muc dich:• % Lap ghep ma tran phan tu vao vao tran he va• % Lap ghep vector luc phan tu vao vector luc cua he• edof=length(index);• for ir=1:edof;• ii=index(ir);• ff(ii)=f(ii);• for ic=1:edof;• jj=index(ic);• kk(ii,jj)=kk(ii,jj)+k(ir,ic);• end• end

CÁC CHƯƠNG TRÌNH CON:• Chương trình con khử điều kiện biên

• function [kk,ff]=khu_dkb(kk,ff,bcdof,bcval)

• % Muc dich:

• % Ap dung dieu kien bien vao phuong trinh [kk]*{uu}={ff}

• n=length(bcdof);

• sdof=size(kk);

• for ic=1:n;

• id=bcdof(ic);

• val=bcval(ic);

• for i=1:sdof;

• ff(i)=ff(i)-val*kk(i,id);

• kk(id,i)=0;

• kk(i,id)=0;

• end

• kk(id,id)=1;

• ff(id)=val;

• end

Recommended