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.

access a result value within the model to generate force

Please login with a confirmed email address before reporting spam

Hi all,
I need to find the pressure difference above and below a shell, along one of its edges, then use it to generate point load on another part of my model.
1. I define a variable of dp_shell with up(p)-down(p) on that boundary
2. I define another variable of dp_edge, using dp_shell on its edge
Now when I define point load of a*dp_edge, I receive an error of undefined variable.

Is it because the variable is not defined before solution?
Do you have an alternative suggestion to apply the load, based on the pressure difference on sides of the boundary, along one of its edges?
Thanks

4 Replies Last Post 15 apr 2016, 16:41 GMT-4
Jeff Hiller COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 8 years ago 15 apr 2016, 15:42 GMT-4
The issue may be that your variable is defined in one location and you're trying to call it in another location, where it is therefore not defined, hence the error message. If that's the problem, look into component couplings (Reference Manual, version 5.2, page 281 and following) to pass the information around your model.
Best,
Jeff
The issue may be that your variable is defined in one location and you're trying to call it in another location, where it is therefore not defined, hence the error message. If that's the problem, look into component couplings (Reference Manual, version 5.2, page 281 and following) to pass the information around your model. Best, Jeff

Please login with a confirmed email address before reporting spam

Posted: 8 years ago 15 apr 2016, 16:12 GMT-4
Hi Jeff,
Thanks for the reply. So I defined a variable that calculates the pressure difference along an edge1 (dp_edge). Then I defined a linear extrusion that maps this edge1 to the edge2 that I want to apply point load along it at vertices (linext1) and I apply point nodes by a*linext1(dp_edge).
Now my concern about the linear extrusion coupling:
edge2 has its own pressure2 and displacement2 etc. Does the linext1 override those values by pressure1 and displacement1 etc from edge1? or it does not changes anything, only makes pressure1 and displacement1 etc available along edge2?
Thanks
Hi Jeff, Thanks for the reply. So I defined a variable that calculates the pressure difference along an edge1 (dp_edge). Then I defined a linear extrusion that maps this edge1 to the edge2 that I want to apply point load along it at vertices (linext1) and I apply point nodes by a*linext1(dp_edge). Now my concern about the linear extrusion coupling: edge2 has its own pressure2 and displacement2 etc. Does the linext1 override those values by pressure1 and displacement1 etc from edge1? or it does not changes anything, only makes pressure1 and displacement1 etc available along edge2? Thanks

Jeff Hiller COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 8 years ago 15 apr 2016, 16:36 GMT-4
All it does is pass the information around, correct.
Jeff
All it does is pass the information around, correct. Jeff

Please login with a confirmed email address before reporting spam

Posted: 8 years ago 15 apr 2016, 16:41 GMT-4
Thanks a lot for the clarification!
Thanks a lot for the clarification!

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.