Hello everyone,
In SWMM Reference Manual Vol 2-Hydraulics, page 45: They said that SWMM 5 use an implicit method.- Please tell me why Bentley called it "Explicit solver" in SewerGEMS.- Is there a document detailed on different between Implicit solver and Explicit solver?- I have read the Bentley's Guide : "The implicit solver tends to be more stable with pumping situations. The explicit solver tends to be more stable with fast changing areas such as ponds or control structures"But if my model has both elements (pumping station and pond, control structures, etc.), what should I rely on to choose the right solver?
Hello,
Cappela said:Please tell me why Bentley called it "Explicit solver" in SewerGEMS.
Although the SWMM documentation mentions “implicit”, this is referring to how the SWMM solver progresses the Explicit iterations, so it is still an Explicit-based scheme. On the other hand, the “Implicit" solver in SewerGEMS and CivilStorm refers to how the underlying scheme is implicit. I have added a note about this to the Wiki article you had mentioned in your initial post.
Cappela said:Is there a document detailed on different between Implicit solver and Explicit solver?
Please see the corresponding Help topics for details, along with the article which I see you have already found: Differences between solvers: GVF-Convex vs. GVF-Rational vs. Implicit vs. Explicit (SWMM)
Cappela said:- I have read the Bentley's Guide : "The implicit solver tends to be more stable with pumping situations. The explicit solver tends to be more stable with fast changing areas such as ponds or control structures"But if my model has both elements (pumping station and pond, control structures, etc.), what should I rely on to choose the right solver?
In this situation I would recommend trying the Explicit (SWMM) solver with a Routing Step of 1 second (and Output Increment of 0.01 hours for example) and carefully review the results. If your pumping stations are relatively straightforward/typical, it should be able to handle it without a problem. If you have more complex, manifolded pumping and the SWMM solver is not producing reasonable results, try checking the input data (like on/off control range and pump curves) and try lowering the Routing Step further or apply the other guidance seen here: Troubleshooting unstable SewerGEMS and CivilStorm model results using the Explicit SWMM Solver
If the pump results are still not reasonable, try switching to the Implicit solver (with a timestep of 0.01 hours or 0.005 hours for example) and carefully review the pump and pond outlet results, taking advance as needed from this article: Troubleshooting unstable SewerGEMS and CivilStorm results using the implicit solver
Regards,
Jesse DringoliTechnical Support Manager, OpenFlowsBentley Communities Site AdministratorBentley Systems, Inc.
Answer Verified By: Cappela
Thank you so much for your explanation, Jesse !
Hi CappelaJust adding some thoughts to Jesse´s answer:
- Please tell me why Bentley called it "Explicit solver" in SewerGEMS
It is called explicit solver, due the fact that this solver uses explicit methods to solve the Saint Venant equations, on the SWMM solver implicit methods. I guess the main differences will be that for the explicit solver the size of the time step must observe the Courant stability condition and you cannot use the Simplified Saint-Venant Equations.When using the SWMM, you can set up smaller time steps and still keep the numerical stability, besides that you can run several simplified Saint-Venant routing:
And by dampening the inertial terms you could get a behaviour very similar to the Diffusive WaveYou can learn more on these links:https://blog.virtuosity.com/sewergems-solvers-part1-choosing-the-right-solver
https://blog.virtuosity.com/sewergems-solvers-part2-choosing-the-right-solver-wastewater-systems