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.

FSI coupling algorithm

Please login with a confirmed email address before reporting spam

To someone concerned.

Do you know about "artificial mass added effect"? This is a famous phenomenon when fully coupling FSI model with very similar density between fluid and solid.

For example in blood vessel FSI simulation the density of blood and blood vessel wall is very similar around 1000kg/m^3. In this case without coupling algorithm most of fsi simulation diverged.

To solve this problem CFX and Ansys are using under-relaxation algorithm to fix this. This phenomenon only comes from two-way fully coupling case with similar density. Not one-way.

In the case of two way fully coupling case kind of wing vibration the density of two materials, air and structure are huge different. In this case there is no "artificial mass added effect".

Is there anybody make sure about this?

If comsol have a fixing algorithm for this case, would you let me know what is it?

Thanks in advance.

11 Replies Last Post 8 oct. 2011, 12:22 UTC−4

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 juil. 2010, 03:14 UTC−4
Artificial added mass is a problem of partioned solvers such as you mentioned e.g. CFX, ... Comsol solves the structure/fluid equations using a kind of monolithic approach, all in one big K matrix. That is why it is quite stable even at similar densities and faster (less iterations) in the case of similar densities. Nevertheless, I do not know the exact formulation/algorithm of FSI in Comsol. If you find please let me know too.
Artificial added mass is a problem of partioned solvers such as you mentioned e.g. CFX, ... Comsol solves the structure/fluid equations using a kind of monolithic approach, all in one big K matrix. That is why it is quite stable even at similar densities and faster (less iterations) in the case of similar densities. Nevertheless, I do not know the exact formulation/algorithm of FSI in Comsol. If you find please let me know too.

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 juil. 2010, 03:33 UTC−4
Hi Danial

Put yourself up on the next COMSOL conference and discuss this directly with the COMSOL developpers, and physics specialists, that's where I get most of the "inside info"

--
Good luck
Ivar
Hi Danial Put yourself up on the next COMSOL conference and discuss this directly with the COMSOL developpers, and physics specialists, that's where I get most of the "inside info" -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 juil. 2010, 09:06 UTC−4
Thanks. You guys.

But if it runs one big K matrix, as I guess this needs more memory when I run FSI model.

In the case of weak coupling most of time spends to calculate FEM part not CFD even using direct solver for FEM.

For example, there is a model with 200,000 mesh for FEM and CFD. In the weak coupling it takes around 12Gb for FEM and much less than memory for CFD.

I don't know how comsol handles K matrix. But it looks like much more memory to calculate for FSI with direct solver.

Do I misunderstand the concept for memory capacity?

Thanks in advance.
Thanks. You guys. But if it runs one big K matrix, as I guess this needs more memory when I run FSI model. In the case of weak coupling most of time spends to calculate FEM part not CFD even using direct solver for FEM. For example, there is a model with 200,000 mesh for FEM and CFD. In the weak coupling it takes around 12Gb for FEM and much less than memory for CFD. I don't know how comsol handles K matrix. But it looks like much more memory to calculate for FSI with direct solver. Do I misunderstand the concept for memory capacity? Thanks in advance.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 juil. 2010, 15:15 UTC−4

Thanks. You guys.

But if it runs one big K matrix, as I guess this needs more memory when I run FSI model.

In the case of weak coupling most of time spends to calculate FEM part not CFD even using direct solver for FEM.

For example, there is a model with 200,000 mesh for FEM and CFD. In the weak coupling it takes around 12Gb for FEM and much less than memory for CFD.

I don't know how comsol handles K matrix. But it looks like much more memory to calculate for FSI with direct solver.

Do I misunderstand the concept for memory capacity?

Thanks in advance.


I am not an expert, but I can tell my experience.

First, I don't understand when you differentiate between FEM and CFD. I guess you mean Structure, interface coupling and CFD, as in Comsol all are FEM. Nevertheless, you are right that monolithic solvers i.e. Comsol (not segregared mode though) use relatively higher amount of RAM. You can also do segregated solving in Comsol and reduce the RAM load.
[QUOTE] Thanks. You guys. But if it runs one big K matrix, as I guess this needs more memory when I run FSI model. In the case of weak coupling most of time spends to calculate FEM part not CFD even using direct solver for FEM. For example, there is a model with 200,000 mesh for FEM and CFD. In the weak coupling it takes around 12Gb for FEM and much less than memory for CFD. I don't know how comsol handles K matrix. But it looks like much more memory to calculate for FSI with direct solver. Do I misunderstand the concept for memory capacity? Thanks in advance. [/QUOTE] I am not an expert, but I can tell my experience. First, I don't understand when you differentiate between FEM and CFD. I guess you mean Structure, interface coupling and CFD, as in Comsol all are FEM. Nevertheless, you are right that monolithic solvers i.e. Comsol (not segregared mode though) use relatively higher amount of RAM. You can also do segregated solving in Comsol and reduce the RAM load.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 27 juil. 2011, 17:55 UTC−4
Danial,

I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right?

Thanks,
Sirisha
Danial, I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right? Thanks, Sirisha

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 23 sept. 2011, 21:40 UTC−4
Anyone? I am still looking for an answer.

Thanks!
Sirisha
Anyone? I am still looking for an answer. Thanks! Sirisha

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 sept. 2011, 03:27 UTC−4

Danial,

I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right?

Thanks,
Sirisha


Alright. If you use seg. solver it does not mean automatically that you are doing a one-way coupling. It depends how you iterate between your seg. solver steps.

Example one: FSI one way coupling

Main step criteria: iteration : 1 iteration
- fluid substep criteria: tolerance
- mesh: tolerance
- solid: tolerance

Example two: FSI two way coupling

Main step criteria: tolerance
- fluid substep criteria: tolerance
- mesh: tolerance
- solid: tolerance

Second one means that it does not come out of loop unless all the FSI physics are in equilibrium, which translates to a two way coupling. The difference of this method and full coupling is the possible stability effects, and RAM.

--
Comsol 4.1
Ubuntu 10.04.1
[QUOTE] Danial, I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right? Thanks, Sirisha [/QUOTE] Alright. If you use seg. solver it does not mean automatically that you are doing a one-way coupling. It depends how you iterate between your seg. solver steps. Example one: FSI one way coupling Main step criteria: iteration : 1 iteration - fluid substep criteria: tolerance - mesh: tolerance - solid: tolerance Example two: FSI two way coupling Main step criteria: tolerance - fluid substep criteria: tolerance - mesh: tolerance - solid: tolerance Second one means that it does not come out of loop unless all the FSI physics are in equilibrium, which translates to a two way coupling. The difference of this method and full coupling is the possible stability effects, and RAM. -- Comsol 4.1 Ubuntu 10.04.1

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 24 sept. 2011, 14:11 UTC−4
Thanks Danial!

Your message shows 3 sub-step criteria. Do I need to have 3 segregated steps? I am not sure how to decide how many segregated steps I need to use.

Can I use 2 segregated steps - one for fluid and the second one for mesh and solid variables?

I looked at the peristaltic pump tutorial but it does not explain anything about how to decide the number of segregated steps needed.

I am wondering if you know of any tutorials or examples that help me understand this. Also, do you know where I can find more information on the segregated solver and its set-up? There is not much information about this in the COMSOL users/reference manuals.

Thanks for the help.
Sirisha
Thanks Danial! Your message shows 3 sub-step criteria. Do I need to have 3 segregated steps? I am not sure how to decide how many segregated steps I need to use. Can I use 2 segregated steps - one for fluid and the second one for mesh and solid variables? I looked at the peristaltic pump tutorial but it does not explain anything about how to decide the number of segregated steps needed. I am wondering if you know of any tutorials or examples that help me understand this. Also, do you know where I can find more information on the segregated solver and its set-up? There is not much information about this in the COMSOL users/reference manuals. Thanks for the help. Sirisha

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 25 sept. 2011, 03:41 UTC−4

Thanks Danial!

Your message shows 3 sub-step criteria. Do I need to have 3 segregated steps? I am not sure how to decide how many segregated steps I need to use.

Can I use 2 segregated steps - one for fluid and the second one for mesh and solid variables?

I looked at the peristaltic pump tutorial but it does not explain anything about how to decide the number of segregated steps needed.

I am wondering if you know of any tutorials or examples that help me understand this. Also, do you know where I can find more information on the segregated solver and its set-up? There is not much information about this in the COMSOL users/reference manuals.

Thanks for the help.
Sirisha



You decide on the number of segregated steps based on experience and nature of the physics. For example, FSI is very sensitive to partion solvers (i.e. segregated solvers). So, there are many research done on that topic and it is generally recommended to use fully coupled solver. The only problem I see with coupled solver is that
1- higher RAM usuage, since it creases one huge stiffness matrix and then runs the solvers on it. If you have enough RAM don't bother with segregated solver.
2- if you have a physics that "posions" your main physics by introducing instabilities. In that case try to separate that troublesome physics and put it on another segregated solver thread, while keeping you main one (e.g. composed of 3 other physics) in a fully coupled mode.

So, my recommendation is to go through literate looking for "monolithic" and "partitioned" solvers. My groups (www.lnm.mw.tum.de) also have several publications on that topic. Also, the Oomph-lib website includes many tutorials on that topic.

--
Comsol 4.1
Ubuntu 10.04.1
[QUOTE] Thanks Danial! Your message shows 3 sub-step criteria. Do I need to have 3 segregated steps? I am not sure how to decide how many segregated steps I need to use. Can I use 2 segregated steps - one for fluid and the second one for mesh and solid variables? I looked at the peristaltic pump tutorial but it does not explain anything about how to decide the number of segregated steps needed. I am wondering if you know of any tutorials or examples that help me understand this. Also, do you know where I can find more information on the segregated solver and its set-up? There is not much information about this in the COMSOL users/reference manuals. Thanks for the help. Sirisha [/QUOTE] You decide on the number of segregated steps based on experience and nature of the physics. For example, FSI is very sensitive to partion solvers (i.e. segregated solvers). So, there are many research done on that topic and it is generally recommended to use fully coupled solver. The only problem I see with coupled solver is that 1- higher RAM usuage, since it creases one huge stiffness matrix and then runs the solvers on it. If you have enough RAM don't bother with segregated solver. 2- if you have a physics that "posions" your main physics by introducing instabilities. In that case try to separate that troublesome physics and put it on another segregated solver thread, while keeping you main one (e.g. composed of 3 other physics) in a fully coupled mode. So, my recommendation is to go through literate looking for "monolithic" and "partitioned" solvers. My groups (www.lnm.mw.tum.de) also have several publications on that topic. Also, the Oomph-lib website includes many tutorials on that topic. -- Comsol 4.1 Ubuntu 10.04.1

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 26 sept. 2011, 22:19 UTC−4
Thanks Danial!
I am looking at the links you suggested.

Sirisha
Thanks Danial! I am looking at the links you suggested. Sirisha

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 8 oct. 2011, 12:22 UTC−4


Danial,

I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right?

Thanks,
Sirisha


Alright. If you use seg. solver it does not mean automatically that you are doing a one-way coupling. It depends how you iterate between your seg. solver steps.

Example one: FSI one way coupling

Main step criteria: iteration : 1 iteration
- fluid substep criteria: tolerance
- mesh: tolerance
- solid: tolerance

Example two: FSI two way coupling

Main step criteria: tolerance
- fluid substep criteria: tolerance
- mesh: tolerance
- solid: tolerance

Second one means that it does not come out of loop unless all the FSI physics are in equilibrium, which translates to a two way coupling. The difference of this method and full coupling is the possible stability effects, and RAM.

--
Comsol 4.1
Ubuntu 10.04.1


Danial,

Example 2 was working great for my model until I changed my inlet BCs. Now I am seeing an error "constraint found for variables in different segregated groups. Try to merge these groups". The only way this error disappears is if I merge all the variables to a single segregated step. Is this the same as solving a fully coupled problem? Does this mean that the physics in my model is so strongly coupled that I can't use a segregated solver?

Thanks for the help.

Sincerely,
Sirisha

[QUOTE] [QUOTE] Danial, I am trying to understand the segregated solver. I thought that using a segregated solver means that you are solving the fluid and solid equations separately. Is that correct? In that case, can the problem still be considered as a two-way coupling FSI problem? I would think it as a one-way coupling because one domain (say fluid) equations are solved and that solution is used in the second one (say solid domain). Right? Thanks, Sirisha [/QUOTE] Alright. If you use seg. solver it does not mean automatically that you are doing a one-way coupling. It depends how you iterate between your seg. solver steps. Example one: FSI one way coupling Main step criteria: iteration : 1 iteration - fluid substep criteria: tolerance - mesh: tolerance - solid: tolerance Example two: FSI two way coupling Main step criteria: tolerance - fluid substep criteria: tolerance - mesh: tolerance - solid: tolerance Second one means that it does not come out of loop unless all the FSI physics are in equilibrium, which translates to a two way coupling. The difference of this method and full coupling is the possible stability effects, and RAM. -- Comsol 4.1 Ubuntu 10.04.1 [/QUOTE] Danial, Example 2 was working great for my model until I changed my inlet BCs. Now I am seeing an error "constraint found for variables in different segregated groups. Try to merge these groups". The only way this error disappears is if I merge all the variables to a single segregated step. Is this the same as solving a fully coupled problem? Does this mean that the physics in my model is so strongly coupled that I can't use a segregated solver? Thanks for the help. Sincerely, Sirisha

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.