SimonEnsemble / PorousMaterials.jl

Julia package towards classical molecular modeling of nanoporous materials
GNU General Public License v3.0
51 stars 11 forks source link

Henry checkpoint #86

Closed Surluson closed 6 years ago

Surluson commented 6 years ago

Added a checkpoint system to the Henry coefficient simulations. Works when split across different processors.

There's no option to manually input checkpoint Dicts (like in the GCMC checkpoint) due to complications when loading in parallel. Each worker checks to see if there's a checkpoint file for the block they're working on and will save/load separately.

Test checks to see if it's able to write and load properly. This checkpoint system doesn't store the internal state of the molecule that's being probed in the framework so it's not possible to reproduce the results exactly

SimonEnsemble commented 6 years ago

good work! i added some clarifying comments to the tests so we don't forget what we did later to test it (took me a few min to figure out why that is a valid test/what is happening, so always good to explain rationale behind the tests). i also changed the checkpoint frequency to 10000, i thought maybe 1000 would be excessive? e.g. this would be 1500 checkpoint writes for CO2 in FIQCEN_clean_min_charges.cif. I don't know about the overhead of writing to a file. You can change it back to 1000 actually if you think that is reasonable to write 1500 checkpoints. i'm probably overthinking it and 1500 checkpoint writes is fine. but if it were 10,000 file writes that would be a lot!