Moment as boundary FEA structuralBoundaryLoad partial differential equation toolbox

6 Ansichten (letzte 30 Tage)
Hello everybody. I found that there is no options for add momentum loads in structural analysis using structuralBoundaryLoad in the partial differential equation toolbox, there are just pressure, surface traction and force. For instance, I want to apply a moment in Z axis at the tip of a beam.
Is there something I missed or is this a serius limitation of the package.
Thank you!

Akzeptierte Antwort

Ravi Kumar
Ravi Kumar am 19 Jan. 2022
Bearbeitet: Ravi Kumar am 19 Jan. 2022
I am assuming you are asking about moment loads and not momentum loads. PDE Toolbox supports tet elements with displacement DoFs. There are no rotational DoFs, like beam elements, to apply moment load directly. However, you can use surface traction that is equivalent to the moment. Here is an example with a simple cylindrical beam.
model = createpde('structural','static-solid');
model.Geometry = multicylinder(0.1,1);
figure(1)
pdegplot(model,'FaceLabels','on')
structuralProperties(model,'Cell',1,'YoungsModulus',200e9 * 0.0254^2,'PoissonsRatio',0.3);
%% Boundary conditions. Clamp one extreme.
structuralBC(model,'Face',1,'Constraint','fixed');
%% Surface traction to create a bending moment at the end
bendingMoment = 1;
forcing_function = @(region,state) momentForcingFunction(region,state,bendingMoment);
structuralBoundaryLoad (model,'Face',3,'SurfaceTraction',forcing_function);
%% Create mesh
generateMesh(model);
% Plot the mesh
figure(2)
pdemesh(model)
%% Solve
R = solve(model);
%% Output
% Displacement
figure(3)
pdeplot3D(model,'ColorMapData',R.Displacement.Magnitude,'Deformation',R.Displacement)
title('displacement')
%% Define a function to provide its handle as input to SurfaceTraction
function sf = momentForcingFunction(region,~,M)
% the structure "region" refers to the spatial coordinates to define a
% nonuniform surface traction. the second argument (not used here) would be
% necessary for time-varying loads.
% Bending moment
%M = 1; %
% Diameter
d = 0.2;
% y-coordinate
y = region.y;
% A normal (z-direction) surface traction that varies linearly with y
% represents the effect of a bending moment
sf = [zeros(size(region.x));
zeros(size(region.y));
- 64 * M * y / (pi * d^4)];
end
  2 Kommentare
jose daniel hoyos giraldo
jose daniel hoyos giraldo am 20 Mär. 2022
Hello. Thanks for sharing this solution. Would you mind explain a little further the way you modeled the moment? and the equation - 64 * M * y / (pi * d^4)]; and its equivalent in terms of total moment applied.
Thanks
jose daniel hoyos giraldo
jose daniel hoyos giraldo am 10 Apr. 2022
@Ravi Kumar Hello. Would you mind giving me a further explanation, please?
I'm trying to apply a twisting moment to an H beam fixed at root.
Thank you!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by