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.

2 Way Component Coupling

Please login with a confirmed email address before reporting spam

I am trying to determine how (if possible) to have 2 way solid mechanics coupling between components.

Some background, I am working on a geometry that is similar to a watch escapement, in a damping fluid, it has a set of center springs (beam flexures), which allow a driven mass to oscillate back and forth within the fluid. The issue I am encountering is that to get proper spring behavior, I need to overmesh the beams, which increases the size of the fluid domain adjacent to them, add in FSI and the DoFs skyrocket. My other option is to use the Quadratic formulation, which will also blow up my solution size. Instead, I want to cut out my spring, make it 2nd order which will provide the proper behavior, and have it act on and be acted on by, the larger Linear mass+FSI portion of the model.

I know that I can use a General Extrusion to map fluid flow vectors between 2 components, and this even allows for backflow across the mapping, but I am having limited success doing the same with solid displacements.

I have attached a simple model demonstrating my use of a Linear Extrusion (also tried with General) to couple 2 sets of components together. Comp 1 has a center block and a beam pointing in +Y, both 2nd order. Comp 2 is just a beam in -Y. The center block is supported by a prescribed displacement holding it at 0, and then sliding it up along +Z. The block is extruded out to one end of the -Y beam, which holds the beam in place while a load deflects it. Then, the center block slides up, and BOTH the beam in Comp1 and the beam in Comp2 move up with it, so its displacement is being applied to the -Y beam.

Now, I want to do the following. I'd like to place a fixed constraint on the +Y end of the Comp1 beam (removing the load), remove the displacement on the center block so it can move freely, and keep the load on the -Y end of the Comp2 beam. My goal is to have the displacement of the -Y beam in Comp2 transfer back to the center block in Comp1, and start shifting that downward, resulting in a 2x long cantilivered beam with a load in one component and a fixed support in another. This kind of 2 way coupling would let me have a fixed support on my spring flexure component, and have my linear element driven mass act on it and be restrained by the quadratic spring, with the displacements passing both ways.

What I currently get when I free the center block and fix the +Y beam, is that the -Y beam deflects as before, but its prescribed deflection end remains fixed, because it is only seeing that the center block is not moving (no external loads), and is unable to transfer the bending stresses through the coupling interface. I've tried adding a General Extrusion to Comp2 back as a prescribed displacement on the center block, but it does nothing. And removing the prescribed displacement from Comp2 causes rigid body motion which leads to nonconvergence.

That was a lot, but anyone got some clever ideas?

Update: So if I remove the nojac operator from the coupling nodes, and use a fully coupled node, or put both Solid Mechanics (for Comp1 and Comp2) into the same segregated step, I can get coupling both ways across the components, so it acts like a long beam. This is progress. But, this requires that the 2 component matrices be solved together, which ultimately defeats the purpose of breaking a large model into components. Is there an operator similar to nojac() which would allow for the coupling to run both ways, but be calculated in 2 seperate segregated steps?



0 Replies Last Post 13 avr. 2021, 21:39 UTC−4
COMSOL Moderator

Hello Aleksandr Zenkov

Your Discussion has gone 30 days without a reply. If you still need help with COMSOL and have an on-subscription license, please visit our Support Center for help.

If you do not hold an on-subscription license, you may find an answer in another Discussion or in the Knowledge Base.

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.