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
how to use the NormalSolver in a CFD problem
Re: how to use the NormalSolver in a CFD problem
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
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
-
- Posts: 2237
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: how to use the NormalSolver in a CFD problem
i would expect that the mesh is not fine enough, or higher order elements are needed.
Re: how to use the NormalSolver in a CFD problem
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). 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
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). 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
-
- Posts: 2237
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: how to use the NormalSolver in a CFD problem
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
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
-
- Posts: 2237
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: how to use the NormalSolver in a CFD problem
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
Boundary Condition 2
Target Boundaries = 2
Body Id = 2
Flow Force BC = True
Surface Tension Coefficient = 0
Mesh Update 2 = Equals FreeSurface
End
Re: how to use the NormalSolver in a CFD problem
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
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
-
- Posts: 2237
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: how to use the NormalSolver in a CFD problem
anything you type in the free text input gets added to that section
Re: how to use the NormalSolver in a CFD problem
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" 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
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" 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
-
- Posts: 2237
- Joined: 25 Jan 2019, 01:28
- Antispam: Yes
Re: how to use the NormalSolver in a CFD problem
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
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