Internal Solitary problem
Dear Niels
Thank you for your eminent toolbox, I have learned a lot from it. Recently, I want to make a extension for its wave models, i.e. , Internal Solitary Wave Models. Unfortunately, I encounter a problem when I set up my case. The strategy of my wave model is: 0. Create a new class. 1. Using the solution of KDV equation, acquire eta, and then add this in member function. 2. Using the solution of KDV equation, acquire Uupper and Ulower, add this in member function. 3. Modify waveVelocityFvVectorField.C The function will divide faces into 3 types, negative, position and both according to member function eta. The negative means that this face is located on lower layer since I could give this boundary a velocity according to KDV solution for lower layer. This step is fully the same to surface water. The positive means that this face is located on upper layer since I could give this boundary a velocity according to KDV solution for upper layer. This step should make a modification in waveVelocityFvVectorField.C to replace the wind velocity in this class. The faces are both positive and negative should make a interpolation: U=negMag/MagSf ŚlowerU(negCenter)+posMag/MagSf*upperU(posCenter) 4. Modify setWaveField.C Similar to step 3. 5.Modify transportProperties, replace air with low density water. 6. None relaxationZone is used. 7. None pExcess is used. And then, after setWaveField, I got this image which is quite similar to the result in the paper http://www.cfd-china.com/assets/uplo...86151394-1.png http://www.cfd-china.com/assets/uplo...86539213-5.jpg Unfortunately, things go wrong after I starting my simulation. The lower water gradually rise up on the left side and the interface collapse in 3 seconds. At the same time, there are a lot of mixture distributing in upper layer. Anyway, could you give me some advice about that? Thank you very much. |
$--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Some calculated results: Crest locates on the left side of calculated zone t=0, initial Fields: http://www.cfd-china.com/assets/uplo...3-1abefore.png http://www.cfd-china.com/assets/uplo...efore.0000.png t=0.005 http://www.cfd-china.com/assets/uplo...21-1aafter.png http://www.cfd-china.com/assets/uplo...after.0001.png Crest locates on the x=0 t=0, initial Fields: http://www.cfd-china.com/assets/uplo...19-0a.0000.png http://www.cfd-china.com/assets/uplo...961-0.0000.png t=0.005 http://www.cfd-china.com/assets/uplo...72-0a.0001.png http://www.cfd-china.com/assets/uplo...067-0.0001.png |
Crest locates on the x=2.5
t=0, initial Fields: http://www.cfd-china.com/assets/uplo...-2.5a.0000.png http://www.cfd-china.com/assets/uplo...5-2.5.0000.png t=0.005 http://www.cfd-china.com/assets/uplo...-2.5a.0001.png http://www.cfd-china.com/assets/uplo...9-2.5.0001.png Crest locates on the x=5 t=0, initial Fields: http://www.cfd-china.com/assets/uplo...63-5a.0000.png http://www.cfd-china.com/assets/uplo...205-5.0000.png t=0.005 http://www.cfd-china.com/assets/uplo...13-5a.0001.png http://www.cfd-china.com/assets/uplo...314-5.0001.png It seems that the initial field, which is set according to analytical solution or potential flow theory, is entirely different from the solution calculated by N-S equation or interFoam. Therefore, the fields cannot maintain its value. However, one of my friend get good results according to the same equation via ANSYS FLUENT. I don't know the reason why my case doesn't work. Does anyone have some ideas? |
All times are GMT -4. The time now is 21:29. |