Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

Σχολή Μηχανικών Παραγωγής και Διοίκησης

Εργαστήριο Υπολογιστικής Μηχανικής και Βελτιστοποίησης

Ασκήσεις στο μάθημα Τεχνική Μηχανική – Αντοχή Υλικών

Χειμερινό Εξάμηνο 2023-2024

Διδάσκων Καθ. Γεώργιος Ε. Σταυρουλάκης

Εργαστήρια Δρ. Μάγδα Μαρινάκη


Εκφώνηση

Εφαρμόστε τα προγράμματα του κειμένου για την επίλυση ενδεικτικών παραδειγμάτων


από το μάθημα

Περιεχόμενα

Διανύσματα, Τανυστές

Τανυστής Τάσης – Δυνάμεις – Εξισώσεις Ισορροπίας – Κύριες Τάσεις

Παραμόρφωση – Τανυστής Παραμόρφωσης – Κύριες Τροπές

Καταστατικός νόμος - Νόμος Hooke – Ισότροπα και Ανισότροπα υλικά

Παραμόρφωση

Διδιάστατη ελαστικότητα – Αναλυτικές λύσεις μέσω τασεοσυναρτήσεων Airy

Ενεργειακά Θεωρήματα – Δοκός – Αρχές Αριθμητικής Προσέγγισης


Διανύσματα, Τανυστές, Προεργασία

Υπολογισμός Εμβαδού, κέντρου βάρους και ροπών αδράνειας πολυγωνικής διατομής

Area=MOMENT(polygon,0,0)
Cx=MOMENT(polygon,1,0)/Area
Cy=MOMENT(polygon,0,1)/Area
Ixx=MOMENT(polygon,2,0)
Iyy=MOMENT(polygon,0,2)
Ixy=MOMENT(polygon,1,1)

where: the function MOMENT is defined as:

function M=MOMENT(polygon,m,n)
Input:
-------
Polygon is a structure contains coordinates vectors Polygon.x and Polygon.y
m:is the order of moment in x-direction
n:is the order of moment in y-direction

Output:
----------
M: Moment

References:
------------------
Kawakami, M., and Amin Ghali. "Time-dependent stresses in prestressed concrete
sections of general shape." PCI journal 41.3 (1996).

Cite As

Ayad Al-Rumaithi (2020). Area, Centroid, and Moment of Inertia of a Polygon


(https://www.mathworks.com/matlabcentral/fileexchange/70090-area-centroid-and-
moment-of-inertia-of-a-polygon), MATLAB Central File Exchange. Retrieved June
20, 2020.

function M=MOMENT(polygon,m,n)
M=0;
N=length(polygon.x);
x=polygon.x;
y=polygon.y;
A=0;
for i=1:1:N
j=i+1;
if i==N
j=1;
end
dx=x(j)-x(i);
dy=y(j)-y(i);
sum2=0;
for j=0:1:m
sum1=0;
for k=0:1:n+1
sum1=sum1+nchoosek(n+1,k)*y(i)^(n+1-k)*dy^k/(k+j+1);
end
sum2=sum2+nchoosek(m,j)*x(i)^(m-j)*dx^(j+1)*sum1;
end
di=sum2/(n+1);
M=M+di;
A=A+dx*(y(i)+dy/2);
end
M=M*sign(A);
end

Ασκηση
Υπολογίστε τη ροπή αδράνειας σε πολυγωνική διατομή μορφής I, L, M και λοιπά με χρήση
του παραπάνω προγράμματος και βοήθεια από ιστοσελίδες όπως
https://www.engineeringtoolbox.com/area-moment-inertia-d_1328.html
Στους φοιτητές μπορούν να δοθούν θέματα με δεδομένα που εξαρτώνται από τον αριθμό
μητρώου, ώστε να είναι εύκολη η σύγκριση και έλεγχος.

Μηχανική, διανύσματα, ισορροπία δυνάμεων και άλλο υλικο από Τεχνική Μηχανική –
Στατική και Δυναμική

http://www.secs.oakland.edu/~latcha/EGR280/StatDynMatlab.pdf

Τανυστής Τάσης – Δυνάμεις – Εξισώσεις Ισορροπίας – Κύριες Τάσεις

Υπολογισμός κυρίων τάσεων

function [S,T]=Principal_3D(s)

Input:
s: stress vector in the form [sigma_xx sigma_yy sigma_zz tau_xy tau_yz tau_zx]

Output:
S: principal stresses magnitude vector
T: principal stresses orientation matrix

Cite As

Ayad Al-Rumaithi (2020). Principal Stresses in 3D Problems


(https://www.mathworks.com/matlabcentral/fileexchange/71518-principal-stresses-in-
3d-problems), MATLAB Central File Exchange. Retrieved June 20, 2020.
function [S,T]=Principal_3D(s)
%Input:
%s: stress vector in the form [sigma_xx sigma_yy sigma_zz tau_xy tau_yz tau_zx]
%Output:
%S: principal stresses vector
%T: principal stresses orientation matrix
[T,S] = eig([s(1) s(4) s(6);...
s(4) s(2) s(5);...
s(6) s(5) s(3)]);
S=diag(S);
[S,I]=sort(S,'descend'); T=T(:,I);
end

Ασκηση
Υπολογισμός κυρίων τάσεων και κατευθύνσεών τους όταν δίδεται ο τανυστής τάσης σε ένα
σημείο και σε επιλεγμένο σύστημα αναφοράς.

Υπολογισμός κύκλου του Mohr (2-D)

The Mohr 2D circle allows the estimation of normal and shear stresses in the plane
state of stresses. This file plots the Mohr circle with the correct stress elements and
the main direction angle.

Cite As

Ricardo Gutierrez (2020). 2D_Mohr_circle_new


(https://www.mathworks.com/matlabcentral/fileexchange/72514-
2d_mohr_circle_new), MATLAB Central File Exchange. Retrieved June 20, 2020.

(main + 2 functions)

%% Draw Mohr's circle in 2D


%--------------------------------------------------------------------------
% Mohr's circle in 2D
% This routine draws Mohr's circle with center defined as Center, radius as
% a scalar R. I used this particular example for an advanced mechanics of
% materials class.
%
% Mark Tschopp
% January, 2010
%
% New Version
% Ricardo Gutiérrez
% August, 2019
%
%--------------------------------------------------------------------------
% % For 2D stress tensor
% % Input dialog box for stresses in xy coordinate system
prompt={'\sigma_x','\sigma_y','\tau_{xy}'};
name='Input for Peaks function';
numlines=1;
defaultanswer={'80','40','-30'};
options.Resize='on';
options.WindowStyle='normal';
options.Interpreter='tex';
answer=inputdlg(prompt,name,numlines,defaultanswer,options);
% Stress tensor, Center, and Radius of Circle
S = [str2double(answer(1)) str2double(answer(3)); str2double(answer(3))
str2double(answer(2))];
Center = (S(1,1)+S(2,2))/2;
R = sqrt(((S(1,1)-S(2,2))/2)^2+S(1,2)^2);
% Calculates the ngle of the main directions
theta = atan2(-S(2,1),(S(1,1)-Center))*180/pi;
tt = abs(theta);
ang = num2str(tt,3);
coor_x = 0.45*R*cos(theta*pi/540);
coor_y = 0.45*R*sin(theta*pi/540);
arrow_angle = theta/2;
% Plot Mohr's circle
% I downloaded a function "circle.m" from the MATLAB Central Website!!!
% It works great with this problem!
c_handle = circle([Center,0],R,100,'-k');
hold on
plot([S(1,1), S(2,2)],[-S(1,2), S(1,2)],'k-','LineWidth',2)
plot(Center,0,'ko','MarkerFaceColor','k') % Center
plot(S(1,1),-S(1,2),'ko','MarkerFaceColor','k') %A
plot(S(2,2),S(1,2),'ko','MarkerFaceColor','k') %B
plot(Center,R,'ko','MarkerFaceColor','k') % Tau_max
plot(Center,-R,'ko','MarkerFaceColor','k') % Tau_max (negative)
plot(Center+R, 0, 'ko','MarkerFaceColor','k') % sigma_1
plot(Center-R, 0, 'ko','MarkerFaceColor','k') % sigma_2
% I downloaded a function "circular_arrow.m" from the MATLAB Central
Website!!!
circular_arrow(c_handle, R/4,[Center,0] , arrow_angle, theta, 1, 'k', 10);
circular_arrow(c_handle, R/8,[Center-0.95*R,1*R] , 90, 135, 1, 'r', 10);
circular_arrow(c_handle, R/8,[Center-0.95*R,-1*R] , 270, 135, -1, 'r', 10);
% Plot options
axis equal
set(c_handle,'Color','k','LineWidth',2)
ylim([-1.25*R, 1.25*R])
xlim([Center-1.25*R, Center+1.25*R])
plot([Center-1.25*R, Center+1.25*R],[0, 0],'k-') % line through 0 tau
% Annotate graph
text(S(1,1)+R/12,-S(1,2),sprintf('A (%d, %d)',S(1,1),-S(1,2)),...
'HorizontalAlignment','left','FontSize',18)
text(S(2,2)-R/12,S(1,2),sprintf('B (%d, %d)',S(2,2),S(1,2)),...
'HorizontalAlignment','right','FontSize',18)
text(Center,1.1*R,'\tau_{max}',...
'HorizontalAlignment','center','FontSize',18)
text(Center,-1.1*R,'\tau_{max}',...
'HorizontalAlignment','center','FontSize',18)
text(Center+1.1*R,R/12,'\sigma_{1}',...
'HorizontalAlignment','center','FontSize',18)
text(Center-1.1*R,R/12,'\sigma_{2}',...
'HorizontalAlignment','center','FontSize',18)
text(Center+coor_x,coor_y,strcat('2\theta_{p}','=',ang,'°'),...
'HorizontalAlignment','center','FontSize',18)
text(Center-0.95*R,1*R,strcat('\tau cw'),...
'HorizontalAlignment','center','FontSize',18,'Color','r')
text(Center-0.95*R,-1*R,strcat('\tau ccw'),...
'HorizontalAlignment','center','FontSize',18,'Color','r')
% More plot options
set(gca,'LineWidth',2,'FontSize',24,'FontWeight','normal','FontName','Times')
set(get(gca,'XLabel'),'String','\sigma
(MPa)','FontSize',24,'FontWeight','bold','FontName','Times')
set(get(gca,'YLabel'),'String','\tau
(MPa)','FontSize',24,'FontWeight','bold','FontName','Times')
scrsize = get(0,'ScreenSize');
set(gcf,'Position',scrsize)
set(gcf,'Position',[1 1 1000 1000])
hold off

function H=circle(center,radius,NOP,style)
%---------------------------------------------------------------------------------------------
% H=CIRCLE(CENTER,RADIUS,NOP,STYLE)
% This routine draws a circle with center defined as
% a vector CENTER, radius as a scaler RADIS. NOP is
% the number of points on the circle. As to STYLE,
% use it the same way as you use the rountine PLOT.
% Since the handle of the object is returned, you
% use routine SET to get the best result.
%
% Usage Examples,
%
% circle([1,3],3,1000,':');
% circle([2,4],2,1000,'--');
%
% Zhenhai Wang <zhenhai@ieee.org>
% Version 1.00
% December, 2002
%---------------------------------------------------------------------------------------------
if (nargin <3),
error('Please see help for INPUT DATA.');
elseif (nargin==3)
style='b-';
end;
THETA=linspace(0,2*pi,NOP);
RHO=ones(1,NOP)*radius;
[X,Y] = pol2cart(THETA,RHO);
X=X+center(1);
Y=Y+center(2);
H=plot(X,Y,style);
axis square;

function circular_arrow(figHandle, radius, centre, arrow_angle, angle, direction,


colour, head_size, head_style)
% This is a function designed to draw a circular arrow onto the current
% figure. It is required that "hold on" must be called before calling this
% function.
%
% The correct calling syntax is:
% circular_arrow(height, centre, angle, direction, colour, head_size)
% where:
% figHandle - the handle of the figure to be drawn on.
% radius - the radius of the arrow.
% centre - a vector containing the desired centre of the circular
% arrow.
% arrow_angle - the desired orientation angle of the circular arrow.
% This is measured in degrees counter-clockwise
% angle - the angle between starting and end point of the arrow in
% degrees.
% direction - variable set to determine format of arrow head. Use 1
% to get a clockwise arrow, -1 to get a counter clockwise
% arrow, 2 to get a double headed arrow and 0 to get just
% an arc.
% colour (optional) - the desired colour of the arrow, using Matlab's
% <a href="matlab:
% web('https://au.mathworks.com/help/matlab/ref/colorspec.html')">Color
Specification</a>.
% head_size (optional) - the size of the arrow head.
% head_style (optional) - the style of the arrow head.
% For more information, see <a href="matlab:
% web('http://au.mathworks.com/help/matlab/ref/annotationarrow-
properties.html#property_HeadStyle')">Annotation Arrow Properties</a>.
%Ensure proper number of arguments
if (nargin < 6)||(nargin > 9)
error(['Wrong number of parameters '...
'Enter "help circular_arrow" for more information']);
end
% arguments 7, 8 and 9 are optional,
if nargin < 9
head_style = 'vback2';
end
if nargin < 8
head_size = 10;
end
if nargin < 7
colour = 'k';
end
% display a warning if the headstyle has been specified, but direction has
% been set to no heads
if nargin == 9 && direction == 0
warning(['Head style specified, but direction set to 0! '...
'This will result in no arrow head being displayed.']);
end
% Check centre is vector with two points
[m,n] = size(centre);
if m*n ~= 2
error('Centre must be a two element vector');
end
arrow_angle = deg2rad(arrow_angle); % Convert angle to rad
angle = deg2rad(angle); % Convert angle to rad
xc = centre(1);
yc = centre(2);
% Creating (x, y) values that are in the positive direction along the x
% axis and the same height as the centre
x_temp = centre(1) + radius;
y_temp = centre(2);
% Creating x & y values for the start and end points of arc
x1 = (x_temp-xc)*cos(arrow_angle+angle/2) - ...
(y_temp-yc)*sin(arrow_angle+angle/2) + xc;
x2 = (x_temp-xc)*cos(arrow_angle-angle/2) - ...
(y_temp-yc)*sin(arrow_angle-angle/2) + xc;
x0 = (x_temp-xc)*cos(arrow_angle) - ...
(y_temp-yc)*sin(arrow_angle) + xc;
y1 = (x_temp-xc)*sin(arrow_angle+angle/2) + ...
(y_temp-yc)*cos(arrow_angle+angle/2) + yc;
y2 = (x_temp-xc)*sin(arrow_angle-angle/2) + ...
(y_temp-yc)*cos(arrow_angle-angle/2) + yc;
y0 = (x_temp-xc)*sin(arrow_angle) + ...
(y_temp-yc)*cos(arrow_angle) + yc;
% Plotting twice to get angles greater than 180
i = 1;
% Creating points
P1 = struct([]);
P2 = struct([]);
P1{1} = [x1;y1]; % Point 1 - 1
P1{2} = [x2;y2]; % Point 1 - 2
P2{1} = [x0;y0]; % Point 2 - 1
P2{2} = [x0;y0]; % Point 2 - 1
centre = [xc;yc]; % guarenteeing centre is the right dimension
n = 1000; % The number of points in the arc
v = struct([]);
while i < 3
v1 = P1{i}-centre;
v2 = P2{i}-centre;
c = det([v1,v2]); % "cross product" of v1 and v2
a = linspace(0,atan2(abs(c),dot(v1,v2)),n); % Angle range
v3 = [0,-c;c,0]*v1; % v3 lies in plane of v1 and v2 and is orthog. to v1
v{i} = v1*cos(a)+((norm(v1)/norm(v3))*v3)*sin(a); % Arc, center at (0,0)
plot(v{i}(1,:)+xc,v{i}(2,:)+yc,'Color', colour) % Plot arc, centered at P0
i = i + 1;
end
position = struct([]);
% Setting x and y for CW and CCW arrows
if direction == 1
position{1} = [x2 y2 x2-(v{2}(1,2)+xc) y2-(v{2}(2,2)+yc)];
elseif direction == -1
position{1} = [x1 y1 x1-(v{1}(1,2)+xc) y1-(v{1}(2,2)+yc)];
elseif direction == 2
position{1} = [x2 y2 x2-(v{2}(1,2)+xc) y2-(v{2}(2,2)+yc)];
position{2} = [x1 y1 x1-(v{1}(1,2)+xc) y1-(v{1}(2,2)+yc)];
elseif direction == 0
% Do nothing
else
error('direction flag not 1, -1, 2 or 0.');
end
% Loop for each arrow head
i = 1;
while i < abs(direction) + 1
h=annotation('arrow'); % arrow head
set(h,'parent', gca, 'position', position{i}, ...
'HeadLength', head_size, 'HeadWidth', head_size,...
'HeadStyle', head_style, 'linestyle','none','Color', colour);
i = i + 1;
end

Ασκηση
Υπολογισμός κυρίων τάσεων και κατευθύνσεών τους όταν δίδεται ο τανυστής τάσης σε ένα
σημείο και σε επιλεγμένο σύστημα αναφοράς. Υπολογισμός και σχεδιασμός μέσω κύκλων
του Mohr

Υπολογισμός Κύκλου του Mohr (3-D)

This is a script for Mohr's Circle. It displays all three circles, all principle stresses, and
the other information associated with Mohr's Circle.
Cite As

andrew arndt (2020). Mohr's Circle


(https://www.mathworks.com/matlabcentral/fileexchange/64940-mohr-s-circle),
MATLAB Central File Exchange. Retrieved June 20, 2020.

%Andrew Arndt
%Mohr's Circle
clc;
clear;
sx=input('sigma_x=');
sy=input('sigma_y=');
txy=input('tau_xy=');
theta=input('theta=');
disp('Stress Transformation')
sxp=((sx+sy)/2)+(((sx-sy)/2)*cosd(2*theta))+(txy*sind(2*theta));
syp=((sx+sy)/2)-((sx-sy)/2)*cosd(2*theta)-txy*sind(2*theta);
txyp=-((sx-sy)/2)*sind(2*theta)+txy*cosd(2*theta);
formatspec='sigma_x = %4.2f\n Sigma_y= %4.2f\n Tau_xy = %4.2f\n';
fprintf(formatspec,sxp,syp,txyp)
disp('Principle Stresses and Angles')
sig_avg=((sx+sy)/2);
R=sqrt(((sx-sy)/2)^2+txy^2);
t1=R;
t2=-R;
sig1=sig_avg+R;
sig2=sig_avg-R;
sigm1=sig_avg-((sx-sy)/2);
sigm2=sig_avg+((sx-sy)/2);
tp=.5*atan(2*txy/((sx-sy)))*180/pi;
ts=.5*atan(-(sx-sy)/(2*txy))*180/pi;
tp2=tp+90;
ts2=ts+90;
disp('Sigma Average and In Slane Saximum Shear Stress');
formatspe='\nsigma_avg = %4.2f\n Tau_maxip = %4.2f\n';
fprintf(formatspe,sig_avg,R);
disp('Angles Corresponding to Sigma_1');
xo=sig_avg;
formatsp='\nsigma_1 = %4.2f\n Theta_p1 = %4.2f\n Theta_s1 = %4.2f\n';
fprintf(formatsp,sig1,tp,ts);
formats='\nsigma_2 = %4.2f\n Theta_p2 = %4.2f\n Theta_s2 = %4.2f\n';
disp('Angles Sorresponding to Sigma_2');
fprintf(formats,sig2,tp2,ts2);
yo=0;
n=100;
r=R*ones(1,n);
theta1=linspace(0,2*pi,n);
[X,Y]=pol2cart(theta1,r);
X=X+xo;
Y=Y+yo;
x1=sig2:1:sig1;
y1=(txy/((((sx-sy)/2)+sig_avg)-sig_avg))*(x1-sig_avg);
x2=sig2:1:sig1;
y2=0;
x3=sig_avg;
y3=-R:1:R;
plot(X,Y,'b-',x1,y1,'r-',x2,y2,x3,y3)
set(gca,'Ydir','reverse')
title('Mohrs Cirlce')
xlabel('\sigma_{1} \rightarrow')
ylabel('\tau \leftarrow')
hold on
grid off
axis equal
xC=sig_avg;
yC=0;
txtC=['\sigma= ',num2str(xC)];
text(xC,yC,txtC);
xb=sig2;
yb=0;
txt2= ['\leftarrow\sigma_2= ',num2str(xb)];
text(xb,yb,txt2);
xa=sig1;
ya=0;
txt1=['\rightarrow\sigma_1= ',num2str(xa)];
text(xa,ya,txt1);
x3=R;
y3=txy;
txt3=['\tau_xy= ',num2str(R)];
text(x3,y3,txt3);
x4=xC+((sx-sy)/2);
y4=txy;
txt4=['\sigma=',num2str(x4)];
txt41=['\tau=',num2str(y4)];
text(x4,y4,{txt4,txt41},'color','red','Fontsize',11);
x5=xC-((sx-sy)/2);
y5=(-txy);
txt5=['\sigma =',num2str(x5)];
txt51=['\tau =',num2str(y5)];
text(x5,y5,{txt5,txt51},'color','red','FontSize',11);
if (sig1>0) && (sig2>0);
t_am=sig1/2;
sig3=sig2-t_am;
disp('Absolute Maximun Shear Stress');
form='Tau_abs in xz = %4.2f\n';
fprintf(form,t_am);
form2='Sigma_1 = %4.2f\n Sigma_3 = %4.2f\n Sigma_2 = %4.2f\n ';
disp('Principle Stresses from smallest to largest');
fprintf(form2,sig1,ya,sig2);
else
t_am=(sig1-sig2)/2;
sig3=sig2-t_am;
disp('Absolute Maximun Shear Stress');
form1='Tau_abs in xy = %4.2f\n';
fprintf(form1,t_am);
form3='Sigma_1 = %4.2f\n Sigma_3 = %4.2f\n Sigma_2 = %4.2f\n ';
disp('Principle Stresses from largest to smallest');
fprintf(form3,sig1,ya,sig2);
end
xo1=sig1-t_am;
yo1=-2;
N=100;
theta3=linspace(0,2*pi,N);
r1=t_am*ones(1,N);
[X1,Y1]=pol2cart(theta3,r1);
x3=X1+xo1;
y3=Y1+yo;
plot(x3,y3,'b-')
xo2=sig2/2;
yo2=0;
n1=100;
theta4=linspace(0,2*pi*n1);
if (sig2>0);
r2=sig2/2*ones(1,n1);
else
r2=-sig2/2*ones(1,n1);
end
[X2,Y2]=pol2cart(theta4,r2);
x4=X2+xo2;
y4=Y2+yo2;
plot(x4,y4,'b-')
if (sig2<0);
xC2=sig1/2;
y03=sig2/2;
y003=sig1/2;
N3=100;
theta11=linspace(0,2*pi,N3);
r4=sig1/2*ones(1,N3);
[X5,Y5]=pol2cart(theta11,r4);
x6=X5+xC2;
y6=Y5+yo;
plot(x6,y6,'b-')
txt=['\tau_xz =',num2str(xC2)];
text(xC2,y003,txt);
txt02=['\tau_yz =',num2str(xo2)];
text(xo2,y03,txt02);
else
xC5=sig2/2;
y03=(sig1-t_am);
y003=sig2/2;
txt01=['\tau_xz =',num2str(t_am)];
text(xo1,y03,txt01);
txt001=['\tau_yz =',num2str(xC5)];
text(xC5,y003,txt001);
end

Ασκηση
Υπολογισμός κυρίων τάσεων και κατευθύνσεών τους όταν δίδεται ο τανυστής τάσης σε ένα
σημείο και σε επιλεγμένο σύστημα αναφοράς. Υπολογισμός και σχεδιασμός μέσω κύκλων
του Mohr

Παραμόρφωση – Τανυστής Παραμόρφωσης – Κύριες Τροπές

Ασκηση
Υπολογισμός κυρίων τροπών και κατευθύνσεών τους όταν δίδεται ο τανυστής
παραμόρφωσης σε ένα σημείο και σε επιλεγμένο σύστημα αναφοράς. Υπολογισμός όπως
προηγουμένως με τις τάσεις.

Καταστατικός νόμος - Νόμος Hooke – Ισότροπα και Ανισότροπα υλικά

Ασκηση
Δίδονται ζευγάρια τιμών τάσεων – παραμορφώσεων. Να διερευνηθεί εάν έχουν ληφθεί
από ισότροπο ή ορθότροπο υλικό. (Αρχική παραδοχή ισότροπου με δύο σταθερές Ε,ν, αν
δεν λύνεται ορθότροπο με περισσότερες σταθερές κλπ).

Παραμόρφωση

Ασκηση
Υπολογισμός πεδίου παραμορφώσεως από το δοσμένο πεδίο μετακινήσεων σε διδιάστατο
παραμορφώσιμο σώμα. Χρήση ορισμών και παραγωγίσεων.
Διδιάστατη ελαστικότητα – Αναλυτικές λύσεις μέσω
τασεοσυναρτήσεων Airy

Ασκηση
Υπολογισμός τάσεων με χρήση τασεοσυναρτήσεων.
(δίδεται η συνάρτηση, υπολογίζονται οι σταθερές της από συνοριακές συνθήκες και
γεωμετρική μορφή του προβλήματος)

Ενεργειακά Θεωρήματα – Δοκός – Αρχές Αριθμητικής Προσέγγισης


Υπολογισμός δοκού σε κάμψη

The program uses a simple algorithm to calculate the deflection at each point of a
cantilever beam subjected to arbitrary loading distribution, the program also
calculates and plots the bending moment and shear force in the beam.
No tricky FEM, just a simple difference method

Cite As

Abhilash Harpale (2020). deflection of a cantilever beam


(https://www.mathworks.com/matlabcentral/fileexchange/31112-deflection-of-a-
cantilever-beam), MATLAB Central File Exchange. Retrieved June 20, 2020.

% Simple algorithm to calculate the deflection, bending moment, shear force in a


% cantilever beam.
% load = loading distribution
% Example,
% 1.Uniform loading of 10 N/m: load=repmat(10,1,1001), l=20, dl=0.02
% 2.Point loading with P=400 N, load=[repmat(0,1,999) 10000 10000], l=20, dl=0.02
% length(load)=(l/dl)
function deflection=beam_deflection(load,ei,l,dl)
if length(load)~=(l/dl+1)
error('Check inputs')
end
y=0:dl:l;
m=sum((y.*load))*dl;
v=sum(load)*dl;
u_4=load/ei;
u_3=v/ei;
for i=2:length(load)
u_3(i)=u_3(i-1)-u_4(i-1)*dl;
end
u_2=m/ei;
for i=2:length(load)
u_2(i)=u_2(i-1)-u_3(i-1)*dl;
end
u_1=0;
for i=2:length(load)
u_1(i)=u_1(i-1)+u_2(i-1)*dl;
end
u=0;
for i=2:length(load)
u(i)=u(i-1)+u_1(i-1)*dl;
end
deflection=u;
plot(y,u_2*ei)
hold on
plot(y,u_3*ei,'r')
legend('bending moment','shear force')
xlabel('length along the beam')
ylabel(' bending moment and shear force (SI units)')
grid
hold off
figure,plot(y,u,'r')
xlabel('length along the beam')
ylabel('deflection')
grid
title('Deflection')

Ασκηση
Υπολογισμός διαγραμμάτων ροπών κάμψεως, διατμητικών δυνάμεων για προβλήματα
δοκών σε κάμψη με χρήση των θεωριών του μαθήματος. Έλεγχος με τη βοήθεια
αριθμητικών εργαλείων όπως το παραπάνω ή τη χρήση πεπερασμένων στοιχείων.

Διάφορα
Κείμενο Mechanical aspects of deformation

http://www.files.ethz.ch/structuralgeology/JPB/files/English/1stress.pdf

Χρήσιμη σελίδα για τη μηχανική του συνεχούς μέσου (ασκήσεις, λύσεις, ενεργή ιστοσελίδα
για υπολογισμούς)

http://www.continuummechanics.org/

Επεξηγηση κυκλου Mohr – τάσεων

http://www.engapplets.vt.edu/Mohr/java/nsfapplets/MohrCircles2-3D/Theory/theory.htm
Αλλαγή συστήματος συντεταγμένων, τάσεις, κύκλος Mohr

http://web.mit.edu/course/3/3.11/www/modules/trans.pdf

Υπολογισμοί δοκών, ατράκτων, στοιχείων διατομών, τάσεων (matlab)

http://www.unm.edu/~bgreen/ME360/Matlab%20Functions/matlab_functions.html

You might also like