How can I improve accuracy using PDE Toolbox
Show older comments
Hello,
I have a cantilever with a constant force. I'm computing the reaction on the clamped edge with the PDE Toolbox.
However the difference between numerical and exact solution is too high.
Is there a way too reduce the difference, other then reducing maximum element size Hmax?
yModulus = 200e3; % young's modulus
ny = 0.2; % Poissons ratio
Hmax = 0.01; % max element size
l = 1; % length of cantilever
b = 0.2; % height of cantilever
q = 10; % constant force
f_press = @(region,state) [q*ones(size(region.y)),zeros(size(region.y))];
structModel = createpde('structural','static-planestress');
gd = [3;4;0;b;b;0;0;0;l;l];
g = decsg(gd,'R',char('R'));
geometryFromEdges(structModel,g);
generateMesh(structModel,'Hmax',Hmax);
structuralProperties(structModel,...
'YoungsModulus',yModulus,...
'PoissonsRatio',ny);
structuralBC(structModel,'Edge',1,'Constraint','fixed');
structuralBoundaryLoad(structModel,'Edge',4,'SurfaceTraction',f_press);
res = solve(structModel);
% Fx should equal 10
reaction = evaluateReaction(res,'Edge',1);

Answers (2)
Alan Weiss
on 9 Jan 2019
0 votes
If your toolbox version were R2017a or earlier, the default mesh for 2-D geometry has linear elements. You can get improved accuracy by using quadratic elements:
generateMesh(model,'GeometricOrder','quadratic')
However, since your toolbox version is R2017b or later (that's when structural analysis was introduced), then I don't know of a way to get more accuracy other than taking a finer mesh.
Alan Weiss
MATLAB mathematical toolbox documentation
Svetlana Pease
on 9 Jan 2019
0 votes
For this particular example, using a finer mesh seems to be the only way to get a more accurate result. In general, you can also try different solver options - for example, you can tighten the tolerances:
Svetlana Pease
MathWorks Documentation Group
Categories
Find more on Structural Mechanics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!