Author |
Message |
Eduardo Howard (eduardolaplata)
New member Username: eduardolaplata
Post Number: 2 Registered: 07-2005
| Posted on Monday, September 05, 2005 - 07:34 pm: | |
Hello, We are trying to model a double diffusive system. The equations, initial values, and boundary conditions were taken from the ref. attached. We managed to write down the whole setup, that runs for an hour without crashes, but things go wrong and we are not reproducing simple facts. We cannot find our mistake. We are stuck at this point. We figure out that this may be less hard to solve for a modeller familiar with FLEXPDE language. We attach the original paper (with the proper equations) in PDF, and our best try. Your help will be really appreciated. Thanks in advance, Eduardo
|
Robert G. Nelson (rgnelson)
Moderator Username: rgnelson
Post Number: 451 Registered: 06-2003
| Posted on Tuesday, September 06, 2005 - 06:48 pm: | |
1. In the absence of instructions otherwise, FlexPDE tries to start with a timestep of 1e-4 times the total time range. You have specified a very large end time, so the initial timestep is much much too large. I did not run it very far this way, so I don't know what it finally accepted after initial cuts, but it is almost certainly too large. Solution: specify a starting timestep of 1e-7 and let it grow if it wants to. 2. FlexPDE will try to refine the initial mesh around steep changes in initial condition, but the result is sometimes a ragged mesh and a poor resolution of the initial condition. Solution: you can get a cleaner initial mesh by specifying an initial mesh density or placing some gridding Features along the steep parts of the initial distribution. 3. Is this problem supposed to be 1D in Y? You have specified Vy=0 on the sides, which means there will be some initial strong shear on the sides. Is this what you want? 4. Your penalty number is much too large, and is dominating the numerics. A good rule of thumb is penalty = 1e4*viscosity/length^2, which produces a penalty number of 100, not 100000. 5. Your velocity Threshold is much too large. Your initial pressure wave propagates outward with velocities like 1e-2, so the Threshold of 1 destroys all accuracy in V. Solution: use thresholds of 0.001 on velocities. With these changes, the problem seems to be running stably with a timestep of about 2e-7 at early times. See attached. I cannot attest to the validity of the equations, only to the setup of the FlexPDE script.
|
Robert G. Nelson (rgnelson)
Moderator Username: rgnelson
Post Number: 452 Registered: 06-2003
| Posted on Tuesday, September 06, 2005 - 07:00 pm: | |
PS Your active pressure changes are a very small percentage of the absolute pressure values. It would probably help to offset the pressures by subtracting 119500 and dealing only with the active pressure differences. There are no absolute pressures used in the equations, as far as I can see.
|
Eduardo Howard (eduardolaplata)
Junior Member Username: eduardolaplata
Post Number: 3 Registered: 07-2005
| Posted on Monday, July 03, 2006 - 02:42 pm: | |
Dear Dr. Nelson, Again with this issue. We tested different scripts, and we managed to run this one: 3.7 K | Dd_st.pde "Double Diffusion" | | We see that the time step grows rapidly from 1e-12 to 1e-10 and remains for hours at this value. We want to inspect time evolution of the system when t>100 secs, and we look for ways to let the time step grow (having learned that transients slow the pace at which simulations run). We followed your suggestions (in this forum, thanks a lot!) and search for contradictions between initial conditions and B. Conditions, but didn't find any. We turned to examine the many terms in our equations to see what happened, but only noticed that the big numbers (1e4 to 1e6) are in the continuity equation. We also found that Reynolds Number, grows steadily... We kindly accept your suggestions. Thanks again Eduardo
|
Eduardo Howard (eduardolaplata)
Member Username: eduardolaplata
Post Number: 4 Registered: 07-2005
| Posted on Monday, July 03, 2006 - 02:46 pm: | |
Hello, it failed to attach the file, hear it goes again: Eduardo
|
Robert G. Nelson (rgnelson)
Moderator Username: rgnelson
Post Number: 643 Registered: 06-2003
| Posted on Monday, July 03, 2006 - 04:59 pm: | |
It's running with a timestep of 1e-10 because you asked for a print interval of 1e-10. FlexPDE cannot take timesteps larger than your requested print intervals.
|
Robert G. Nelson (rgnelson)
Moderator Username: rgnelson
Post Number: 644 Registered: 06-2003
| Posted on Monday, July 03, 2006 - 06:04 pm: | |
You can use FOR CYCLE=10 As the time control on MONITORS to get frequent reports without interfering with the natural timestep control. (In early stages of script development, you might want to use CYCLE=1 so you keep on top of what's going on.) |
Robert G. Nelson (rgnelson)
Moderator Username: rgnelson
Post Number: 645 Registered: 06-2003
| Posted on Tuesday, July 04, 2006 - 02:28 am: | |
PS I recommend turning REGRID=OFF. Something in the vx and vy equations causes too much gridding. Also, you should always MONITOR contours of all variables, so you can see what is happening. |