I find that the matlab official example "deflectio​n-of-a-pie​zoelectric​-actuator" cannot be correct

2 views (last 30 days)
While teaching piezoelectrical materials in my course at the Politecnico di BARI, I have explored the Matlab example "deflection-of-a-piezoelectric-actuator" which can be found in the official matlab web site at https://it.mathworks.com/help/pde/ug/deflection-of-a-piezoelectric-actuator.html
The result of the example itself may be correct because it is checked against some reference solution.
However this is when the voltage across the bilayer actuator is simply linear across the y-direction because uniform voltage is imposed on the top surface and on the bottom one. However, when I asked the students to reproduce other conditions, like for example voltage only across part of the top surface and on the bottom one, or across the lateral surfaces, the resulting electrical field is very weird and very unlikely to be correct.
After all, although the problem is strictly speaking coupled between the electrical field and the mechanical one, I would not expect the electrical field to be very different from the classical electrical or thermal problem in the same domain, with imposed voltage (or temperature). And this problem, solved with Matlab or with other means, shows much smoother results.
The treatment of matrices is so involute that it is hard to check if the formulation is correct.
But when we checked the solution using ANSYS, even the coupled piezoelectrical problem shows smooth results, which differ from this example.
So be aware that there must be some error in the formulation!
Prof. Michele Ciavarella
Politecnico di BARI
mciava@poliba.it

Accepted Answer

Ravi Kumar
Ravi Kumar on 15 May 2019
Edited: Ravi Kumar on 15 May 2019
Hello Prof. Ciavarella,
Can you provide a bit more details, reproduction code and expected results, of the modified setup to investigate this issue?
Regards,
Ravi
  7 Comments
Ravi Kumar
Ravi Kumar on 21 May 2019
Hello Prof. Ciavarella,
My reply on 16 May 2019 at 22:46 precisely shows what you want to do. There are three equations in the setup, first two are structural equation and third is for potential. Clamped structural BC corresponds to setting first two dependent variables to zero. Hence, the following two BCs sets zero displacement and a voltage on edge 6 and 7.
voltLeft1 = applyBoundaryCondition(model,'dirichlet','Edge',6,...
'u',[0,0,V],...
'EquationIndex',1:3);
voltLeft2 = applyBoundaryCondition(model,'dirichlet','Edge',7,...
'u',[0,0,V],...
'EquationIndex',1:3);
You can also write the above two statements as one statement with both 6 and 7 in the Edge option as:
voltLeft1n2 = applyBoundaryCondition(model,'dirichlet','Edge',[6,7],...
'u',[0,0,V],...
'EquationIndex',1:3);
Regards,
Ravi

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!