How can I solve non-dimensional equations in FOAM
I'm interested in solving (as a starting point) a non-dimensionalised version of laplacianFoam.
After I have chosen my non-dimensionalisation, how can I implement this in Foam? I'm worried that foam checks dimensions! For example: How do I change the timestep and spatial coordinates (in blockMeshDict) to be non-dimensional, and how do I deal with diffusion coefficients (which will become ratios of diffusion coefficients after the non-dimensionalisation) Is it possible to do this. Does anyone know how? Any help would be much appreciated. |
Quote:
Do not change the unit of variables! Regards, |
Quote:
Second, you could change all the equations you want to solve ... but alternatively you could also simply solve the existing equations and rescale your solution when writing the solution. That works best for me (for one reason, you'll always be stuck with the time derivative and nabla operator which keep their dimensions). Cheers, Lieven |
Hi Lieven,
I just wonder how did you rescale your solution? Can you give me a hint please? Thank you very much. Kind regards, Tony |
Hi Tony,
Have a look at http://en.wikipedia.org/wiki/Dimensional_analysis Basically, you rescale your solution by multiplying it with reference quantities. For example, a concentration in [kg/m³] can be rescaled as: Code:
c+ [-] = c [kg/m³]* L² [m²]*V[m/s] / R [kg/s] This is merely an example but I hope you got the picture. Cheers, L |
Hi Lieven,
It is really nice of you to give me the explanation. My case is I want to rescale my result to nondimensional value and continue the simulation, I wonder how you achieve it in OpenFOAM? I have done nondimensionalisation for U, p fields and geometry size, however, the simulation didn't run continuously. The simulation should continue without gap, right? Kind regards, Tony |
All times are GMT -4. The time now is 13:30. |