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.

Mass balance/Subdomain integration/ALE

Please login with a confirmed email address before reporting spam

Hi,

I am working with ALE along with two pde's. I want to calculate the mass balance. I used both subdomain integration and subdomain integration coupling options to calculate the mass. And the frame in my model is moving mesh ALE frame.

I am not getting the correct mass values in either of those two methods. when i use 1 in those integration term (integrating 1) it is giving the exact values. But if i use 'r' (r-coordinate in ALE) then i am getting wrong answer.

Finally i checked everything and used different frames with different coordinates but no use.

Any comments/suggestions would be a great help and appreciated...

Thanks,

Manohar

2 Replies Last Post Feb 23, 2011, 11:31 a.m. EST
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 Feb 23, 2011, 9:25 a.m. EST
Hi

are you sure you are not mixing up constant mass and constant density ?.
In COMSOL we define the mass of a domain (or several as the sum over the individual domains) as the integration of the density over the MATERIAL frame (undeformed) volume.

If you integrate over the SPATIAL frame in structural, it is deformed, hence it's integrated volume might have changed so if you integrate the same density "solid.rho" and not "1" (which would give you only the volume) you will get a different total mass, An apparent violation of the mass conservation.

So it's all a question of reference

--
Good luck
Ivar
Hi are you sure you are not mixing up constant mass and constant density ?. In COMSOL we define the mass of a domain (or several as the sum over the individual domains) as the integration of the density over the MATERIAL frame (undeformed) volume. If you integrate over the SPATIAL frame in structural, it is deformed, hence it's integrated volume might have changed so if you integrate the same density "solid.rho" and not "1" (which would give you only the volume) you will get a different total mass, An apparent violation of the mass conservation. So it's all a question of reference -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 23, 2011, 11:31 a.m. EST
Hi Ivar,

Thanks for your reply. Let me give you a piece of information to better understand my question. This is the same problem which i asked a question previously.

I am working on a chemical reaction problem where the reactant is converting into product. The reactant subdomain is dissolving/disappearing where as my product subdomain is forming/appearing over a period of time. The density of the reactant is constant and the product density is a function of space.

so In this case, i want to calculate both the mass of the reactant and mass of the product at any intermediate time to check the mass balance.

at any time 't': rc-core radius, rp-product radius (those are tracked correctly using intergration boundary coupling variables)

mass of the reactant is int(4*Pi*r^2*density of reactant) with limits 0 and rc (note that rc is varying w.r.t 't' and constant at any given time). I am not using those limits in comsol since it should take automatically from my reactant subdomain.

mass of the product is int(4*Pi*r^2*density of product) with limits rc and rp (note: both rc and rp are varying w.r.t 't' and constant at any given time, also density is varying w.r.t 'r and t'.

I am getting the mass balance wrong and i don't believe that it is doing the right thing. So, i just used a simple way to check the procedure by doing the following:

To check wheather comsol is giving the correct answer:

i took subdomain integration over reactant and product subdomain seprately

if i use 1 instead of the above mentioned expressions, that means it is nothing but int(1) with limits 0 to rc so the value is rc and i got that value. for the product i got rp-rc.

if i use r, that means it is int(r) with limits 0 and rc for reactant subdomain and int(r) with product subdomain. the answers should be rc^2 and rp^2-rc^2, but i am not getting those values.


Sorry about the long description...

Need some comments.........

Thank you,

Manohar
Hi Ivar, Thanks for your reply. Let me give you a piece of information to better understand my question. This is the same problem which i asked a question previously. I am working on a chemical reaction problem where the reactant is converting into product. The reactant subdomain is dissolving/disappearing where as my product subdomain is forming/appearing over a period of time. The density of the reactant is constant and the product density is a function of space. so In this case, i want to calculate both the mass of the reactant and mass of the product at any intermediate time to check the mass balance. at any time 't': rc-core radius, rp-product radius (those are tracked correctly using intergration boundary coupling variables) mass of the reactant is int(4*Pi*r^2*density of reactant) with limits 0 and rc (note that rc is varying w.r.t 't' and constant at any given time). I am not using those limits in comsol since it should take automatically from my reactant subdomain. mass of the product is int(4*Pi*r^2*density of product) with limits rc and rp (note: both rc and rp are varying w.r.t 't' and constant at any given time, also density is varying w.r.t 'r and t'. I am getting the mass balance wrong and i don't believe that it is doing the right thing. So, i just used a simple way to check the procedure by doing the following: To check wheather comsol is giving the correct answer: i took subdomain integration over reactant and product subdomain seprately if i use 1 instead of the above mentioned expressions, that means it is nothing but int(1) with limits 0 to rc so the value is rc and i got that value. for the product i got rp-rc. if i use r, that means it is int(r) with limits 0 and rc for reactant subdomain and int(r) with product subdomain. the answers should be rc^2 and rp^2-rc^2, but i am not getting those values. Sorry about the long description... Need some comments......... Thank you, Manohar

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.