prisms-center / phaseField

PRISMS-PF: An Open-Source Phase-Field Modeling Framework
https://prisms-center.github.io/phaseField/
Other
229 stars 119 forks source link

Support for `IMPLICIT_TIME_DEPENDENT` equation types & Advection application #268

Closed landinjm closed 1 month ago

landinjm commented 1 month ago

Finished the partial implementation of implicit equations from a few years ago.

Right now, we store the old solution value for all implicit equation type fields with a boost::unordered_map. This should allow for straightforward extension to higher order time schemes (by indexing previous time states).

The performance is about the same, if not slightly worse, since we have to check whether we have a map entry that needs to be copied for each field index in solveIncrement.cc. This can likely be circumvented by another bool entry to the variable_info struct.

Closes #228

landinjm commented 1 month ago

I've switched to a bool, but the performance seems to be about the same.