1 |
francois |
941 |
clc;
|
2 |
|
|
disp('Solution exercice 2 du chapitre introduction');
|
3 |
|
|
disp('Resolution du probleme statique');
|
4 |
|
|
A=[0,0,0];
|
5 |
|
|
B=[2,0,0];
|
6 |
|
|
C=[4,0,0];
|
7 |
|
|
D=[6,0,0];
|
8 |
|
|
Pb=[0,-1250,0];
|
9 |
|
|
Pd=[0,-500,0];
|
10 |
|
|
syms Ray Rcy;
|
11 |
|
|
Ra=[0,Ray,0];
|
12 |
|
|
Rc=[0,Rcy,0];
|
13 |
|
|
eq1=Ra(2)+Rc(2)+Pb(2)+Pd(2);
|
14 |
|
|
AB=B-A;
|
15 |
|
|
AC=C-A;
|
16 |
|
|
AD=D-A;
|
17 |
|
|
eq2=Pb(2)*norm(AB,2)+Rc(2)*norm(AC,2)+Pd(2)*norm(AD,2);
|
18 |
|
|
R=solve(eq1,eq2);
|
19 |
|
|
disp(sprintf('Ray=%d N',eval(R.Ray)));
|
20 |
|
|
disp(sprintf('Rcy=%d N',eval(R.Rcy)));
|
21 |
|
|
disp('Calcul des diagrammes V et M');
|
22 |
|
|
syms x y
|
23 |
|
|
Vab=-R.Ray;
|
24 |
|
|
Mab=R.Ray*x;
|
25 |
|
|
Vbc=Vab-Pb(2);
|
26 |
|
|
Mbc=Mab+Pb(2)*(x-2);
|
27 |
|
|
Vcd=Vbc-R.Rcy;
|
28 |
|
|
Mcd=Mbc+R.Rcy*(x-4);
|
29 |
|
|
ezplot(Vab,[0 2]);
|
30 |
|
|
hold on;
|
31 |
|
|
ezplot(Vbc,[2 4]);
|
32 |
|
|
ezplot(Vcd,[4 6]);
|
33 |
|
|
p2=ezplot(Mab,[0 2]);
|
34 |
|
|
set(p2,'Color','red');
|
35 |
|
|
p2=ezplot(Mbc,[2 4]);
|
36 |
|
|
set(p2,'Color','red');
|
37 |
|
|
p2=ezplot(Mcd,[4 6]);
|
38 |
|
|
set(p2,'Color','red');
|
39 |
|
|
xlim('auto');
|
40 |
|
|
ylim('auto');
|
41 |
|
|
title('Diagramme V et M');
|
42 |
|
|
disp('entre A et B');
|
43 |
|
|
Vab
|
44 |
|
|
Mab
|
45 |
|
|
disp('entre B et C');
|
46 |
|
|
Vbc
|
47 |
|
|
Mbc
|
48 |
|
|
disp('entre C et D');
|
49 |
|
|
Vcd
|
50 |
|
|
Mcd
|
51 |
|
|
disp('Calcul de la contrainte normale maximale');
|
52 |
|
|
l=40e-3;
|
53 |
|
|
L=60e-3;
|
54 |
|
|
I=int(1,x,-l/2,l/2) * int(y*y,y,-L/2,L/2);
|
55 |
|
|
sigmamaxsup=-Mbc*L/2/I;
|
56 |
|
|
sigmamaxinf=-Mbc*(-L)/2/I;
|
57 |
|
|
disp(sprintf(' sur la fibre superieure en x=4 sigma=%d Pa',eval(limit(sigmamaxsup,4))));
|
58 |
|
|
disp(sprintf(' sur la fibre inferieure en x=4 sigma=%d Pa',eval(limit(sigmamaxinf,4))));
|
59 |
|
|
disp('Calcul de la contrainte tangeantielle maximale');
|
60 |
|
|
Q=int(1,x,-l/2,l/2)*int(y,y,0,L/2);
|
61 |
|
|
Tmax=Vbc*Q/I/l;
|
62 |
|
|
disp(sprintf(' sur la fibre neutre entre B et C superieure tau=%d Pa',eval(Tmax)));
|
63 |
|
|
|