Q. How do I accurately measure the volume of the cloud inside an iso-surface defined at a fixed mass fraction? I would ideally like to be able to carry out such calcs using Post, rather than User FORTRAN.

A.
If you create a volume in post (isovolume) using "above value" with your specified criterion, and the inclusive switch on, then you get every element that the isosurface passes through, plus those inside it. That is, when you calculate its volume using the function calculator it is slightly larger than ideally indicated by the isosurface. If you switch the inclusive flag off, you only get those elements who lie entirely inside the isosurface. Hence its volume is slightly smaller than the isosurface might suggest. The problem is, the result is mesh sensitive and only in the limit of very small elements do you get the same (accurate) answer.

Another solution is to do the calculation yourself using a new variable that then better takes into account partial elements rather than only whole ones. Create a new variable in Post called "cloud" (or something) and make it equal to 'step(gas.mf - critval)'. Thus inside the cloud values will be one, and outside they will be zero. Then in the function calculator perform the volumeInt of your new variable cloudwith the entire assembly as the location. This should give a more accurate value for the enclosed volume, and incidentally it will be somewhere between the 2 volume values obtained above from isovolumes.

Q2. How do I now get the volume averaged mole fraction of gas within this iso-surface.

A2.
For the volume average bit, create another variable in Post (called "cloudmf" perhaps?) equal to the mass fraction times cloud, or 'gas.mf*step(gas.mf-critval)' . Then to get the volume weighted average within the cloud, calculate the volume integral of cloudmf, and divide by the volume integral of cloud. Always use the entire assembly as the location for these calculations, and you should be ok.


Q. How do I accurately measure the volume of the cloud inside an iso-surface defined at a fixed mass fraction? I would ideally like to be able to carry out such calcs using Post, rather than User FORTRAN.

A.
If you create a volume in post (isovolume) using "above value" with your specified criterion, and the inclusive switch on, then you get every element that the isosurface passes through, plus those inside it. That is, when you calculate its volume using the function calculator it is slightly larger than ideally indicated by the isosurface. If you switch the inclusive flag off, you only get those elements who lie entirely inside the isosurface. Hence its volume is slightly smaller than the isosurface might suggest. The problem is, the result is mesh sensitive and only in the limit of very small elements do you get the same (accurate) answer.

Another solution is to do the calculation yourself using a new variable that then better takes into account partial elements rather than only whole ones. Create a new variable in Post called "cloud" (or something) and make it equal to 'step(gas.mf - critval)'. Thus inside the cloud values will be one, and outside they will be zero. Then in the function calculator perform the volumeInt of your new variable cloudwith the entire assembly as the location. This should give a more accurate value for the enclosed volume, and incidentally it will be somewhere between the 2 volume values obtained above from isovolumes.

Q2. How do I now get the volume averaged mole fraction of gas within this iso-surface.

A2.
For the volume average bit, create another variable in Post (called "cloudmf" perhaps?) equal to the mass fraction times cloud, or 'gas.mf*step(gas.mf-critval)' . Then to get the volume weighted average within the cloud, calculate the volume integral of cloudmf, and divide by the volume integral of cloud. Always use the entire assembly as the location for these calculations, and you should be ok.





Show Form
No comments yet. Be the first to add a comment!