FS#85 Implement time step ramp up for the implicit models
Metadata
Property |
Value |
Project |
dumux |
Category |
General |
Reported by |
Anonymous (Id=0) |
Reported at |
Apr 1, 2010 09:53 |
Type |
Potential Thesis/Job |
Version |
Git |
Last edited by |
Anonymous (Id=1) |
Last edited at |
Aug 17, 2010 08:21 |
Closed by |
Anonymous (Id=1) |
Closed at |
Aug 17, 2010 08:21 |
Closed in version |
unknown (Id=0) |
Resolution |
Implemented |
Description
The current implementation of the newton method uses the same time step size for each of its iterations. Given that the main non-linearities lie in the storage term, it should be possible to achieve much larger final time steps if the time step size is "ramped up" in the first few iterations of the newton method. in pseudo-code this approach looks like this:
rampUpIterations = 3;
finalDeltaT = timeManager.timeStepSize();
while (numIterations < rampUpIterations && !converged()) {
if (numIterations < rampUpIterations) {
// here, we can chose different strategies
deltaTFraction = (numIterations + 1)/rampUpIterations;
timeManager.setTimeStepSize(finalDeltaT * deltaTFraction);
}
// do a newton iteration
};
The task involves implementing the approach in DuMuX, comparing the ramp-up approach with the current approach and testing different strategies for the ramp up. Strategies can be a linear, accelerating or deaccelerating the fraction of the final time step size during the course of the ramp-up.