how to use the NormalSolver in a CFD problem

Numerical methods and mathematical models of Elmer
Roland
Posts: 226
Joined: 12 Apr 2018, 11:29
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by Roland »

Hi Peter,
Thanks for your answer. I think that discussing this on the forum is interesting since other people who could be interested in that free surface flow problem can participate.
So probably you saw the EM levitation results I sent you by mail a few days ago. As showed in these results, the liquid goes nicely up at the beginning but after about 1.5s the freesurface is no more smooth and strong peaks appear especially at the top of the free surface. For getting this I had also to suppress the gravity force (meaning -density*g). As I said it, and after having made many tests by changing the parameters (time step size, viscosity, surface tension, etc...) I don't know what could be done to have the charge levitate nicely. Please have you an idea of what could be done for improving the model?
Thanks in advance for any help about that!
Roland
Roland
Posts: 226
Joined: 12 Apr 2018, 11:29
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by Roland »

Oups I forgot to join the case.sif file (your file, Peter, in which I made slight modifications) and the result at t=0s, t=1s and t=1.9s.
Here they are!
Roland
Attachments
half_result_at_1.9s.JPG
(107.01 KiB) Not downloaded yet
half_result_at_0s.JPG
(113.46 KiB) Not downloaded yet
case.sif
(7.53 KiB) Downloaded 84 times
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by kevinarden »

i would expect that the mesh is not fine enough, or higher order elements are needed.
Roland
Posts: 226
Joined: 12 Apr 2018, 11:29
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by Roland »

Hi,
As the EM_levitation of a liquid charge, with using the NormalSolver, does not work for the moment, I try in a first step to make a more simple model which is the same as the Elmer No-GUI Freesurf_sloshing_2d model, but I try to make it with the GUI.
Here attached is the project. It is a tank with an initial bent top freesurface which should become an horizontal flat surface after a few oscillations.
Unfortunately, after solving the model, the freesurface is not moving and remains unchanged.The solver log window during the solve shows that something is wrong with the FreeSurfaceSolver and gives following message:
"FreeSurfaceSolver (freesurface): Solving for free surface
WARNING:: FreeSurfaceSolver (freesurface): A serial run without a free surface, but the solver switched in - weird!"
When I edit the case.sif file I see only a "body 1"(the bulk liquid) while in the case.sif of the No-GUI Freesurf_sloshing_2d model there is a "Body 1" (the bulk liquid) and a "Body 2"(the freesurface).
tank_model.zip
tank model GUI project
(874.34 KiB) Downloaded 83 times
It would be very kind if somebody could take a look at the project and tell me what is wrong.
Many thanks in advance for your help!
Roland
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by kevinarden »

Body 1
Target Bodies(1) = 1
Name = "Body 1"
Equation = 1
Material = 1
Body Force = 1
End

Body 1 only references equation 1 but the free surface is equation 2, you can create equations in the gui, but you you have to active them by checking the active flag
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by kevinarden »

The test case assigns the free surface as a body in the boundary condition allowing the free surface to be assigned an equation

Boundary Condition 2
Target Boundaries = 2
Body Id = 2
Flow Force BC = True
Surface Tension Coefficient = 0
Mesh Update 2 = Equals FreeSurface
End
Roland
Posts: 226
Joined: 12 Apr 2018, 11:29
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by Roland »

Ok thanks.
But how can you get the line "Body Id = 2" which you mention in the boundary condition with the GUI?
Thanks in advance for you help about that.
Roland
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by kevinarden »

anything you type in the free text input gets added to that section
bc.png
bc.png (37.74 KiB) Viewed 979 times
Roland
Posts: 226
Joined: 12 Apr 2018, 11:29
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by Roland »

Hi,
As you suggested I typed "Body Id = 2" in the "General" frame in Boundary Condition 3.
But unfortunately the solver gives following error message:
"ERROR:: ListGetInteger: Given value 2 for property: [Body Id] larger than given maximum: 1"
According the "FreeSurf_sloshing_2d" model case.sif, there should appear, on the top just after "Constants", in addtion of the bulk Body 1, a Body 2 (which should be the "1D Body" corresponding to the Free surface...), but in my model this Body 2 does not appear and only the Body 1 is present. So how is it possible, with the GUI, to have also appear the Body 2 (which is the "1D Body"
tank_model.zip
tank_model project
(76.46 KiB) Downloaded 87 times
tank_model.zip
tank_model project
(76.46 KiB) Downloaded 87 times
corresponding to the Free surface) ?
Here attached is the "tank_model" project again.
It would be very nice if you could bring me some help for fixing this...
Thanks in advance
Roland
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: how to use the NormalSolver in a CFD problem

Post by kevinarden »

Only way in the GUI is go to sif edit, add it to the sif file by typing it in, use the save and run button if you have everthing else set.
add it right underneath body 1

Body 1
Target Bodies(1) = 1
Name = "Body Property 1"
Equation = 1
Material = 1
Body Force = 1
End

Body 2
Equation = 2
Material = 1
End
Post Reply