Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Follower pressure on internal boundary + export line displacement in m-file

Please login with a confirmed email address before reporting spam

Hi,

I want to simulate the displacement of two elastic electrodes with an elastic material as dielectric. Doing this with the electrostatic module with moving mesh doesn't give a converged solution for higher electric fields.
So I want to model the electrostatic pressure as a follower pressure. Since the electrodes are embedded within the material, the pressure has to act on an internal boundary but the follower pressure seems to work only on external boundaries.
Does anybody know a way to solve this problem?

My second problem is, that I want to analyze the displacement of a line with matlab, so I need to export the displacement of a boundary. This is no problem with the GUI, but how can I get this done within the m-file? (i.e. z-displacement of boundary x)

Any advice is highly appreciated!

Best regards,
Jens

2 Replies Last Post 26.03.2010, 07:58 GMT-4

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 25.03.2010, 18:43 GMT-4
for your second problem
1 do it with the gui
2 save the corresponding file as an m.file
3 open the m.file in a text editor and locate the corresponding lines you will have the syntax.

jf
for your second problem 1 do it with the gui 2 save the corresponding file as an m.file 3 open the m.file in a text editor and locate the corresponding lines you will have the syntax. jf

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26.03.2010, 07:58 GMT-4
Thank you for your reply, but in this case saving the file as *.m doesn't work. I only get the following:

postcrossplot(fem,1,[5], ...
'lindata','w', ...
'cont','internal', ...
'title','z-displacement [m]', ...
'axislabel',{'Arc-length','z-displacement [m]'}, ...
'refine','auto');

When I execute the m-file, nothing happens.

It is possible to work around this by using the postinterp command and a for loop to evaluate a line point by point. Getting the displacement for a boundary directly would however be much more elegant. Especially when the boundary isn't a line but a bezier curve.

Best regards,
Jens Brunne
Thank you for your reply, but in this case saving the file as *.m doesn't work. I only get the following: postcrossplot(fem,1,[5], ... 'lindata','w', ... 'cont','internal', ... 'title','z-displacement [m]', ... 'axislabel',{'Arc-length','z-displacement [m]'}, ... 'refine','auto'); When I execute the m-file, nothing happens. It is possible to work around this by using the postinterp command and a for loop to evaluate a line point by point. Getting the displacement for a boundary directly would however be much more elegant. Especially when the boundary isn't a line but a bezier curve. Best regards, Jens Brunne

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.