Using a FWAction to skip to a specific firework

I have the attached graph for my proposed workflow. I have written a Firetask that checks the symmetry after a VASP relaxation and compares it to the input structure’s symmetry.

I want to use this Firetask to check the symmetry of FW2 and pass the initial structure to FW4 if the symmetry breaks or proceed to FW3 with the relaxed structure if successful.

Then the same with FW3: pass the initial structure to FW4 if symmetry breaks, otherwise pass the final structure to FW4.

What’s the best way to achieve this by reusing the same Firetask? I was thinking to use an optional_param for success and failure FWActions (defaults will be exit and defuse on fail, do nothing on pass), but I’m unsure how to most effectively write these FWActions.

Brandon

relaxation-graph.png

Thinking about this some more, maybe the FW1 -> FW2 -> FW4 where FW2 can detour to FW3 on unchanged symmetry? Then for FW3 just do a special case with no detour.

A couple ways

i) The way you outlined, FW1->FW2->rest of workflowwith FW3 being created as a detour for FW2. This way seems the most natural to me

ii) Does ISIF 7, 2, and 4 FWS do the same thing? If so, you can just have FW1 -> rest of workflow where FW1 can take any ISIF but starts with ISIF=7 and generate all the other FWs using detours.

At the end of FW1, if ISIF=7 then detour with the same type of FW (FW1) again but ISIF=2.

At the end of FW1, if ISIF=2 and symmetry changed then continue with workflow as normal (goes to rest of workflow)

At the end of FW1, if ISIF=2 and symmetry unchanged then detour with the same FW but with ISIF=4.

At the end of FW1, if ISIF=4 and symmetry unchanged pass final structure else pass initial structure.

But it is not clear to me whether it’s worth doing it all in different Fireworks in the first place. I understand that there are likely walltime considerations but it might be worth thinking of running the whole logic of FW1/2/3 within a single Firework and not bothering with detour, etc.

Best,

Anubhav

···

On Sat, Sep 9, 2017 at 3:11 PM, Brandon B [email protected] wrote:

Thinking about this some more, maybe the FW1 -> FW2 -> FW4 where FW2 can detour to FW3 on unchanged symmetry? Then for FW3 just do a special case with no detour.

You received this message because you are subscribed to the Google Groups “fireworkflows” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

Visit this group at https://groups.google.com/group/fireworkflows.

To view this discussion on the web visit https://groups.google.com/d/msgid/fireworkflows/e366f62b-96af-4531-b974-445ff7af83e3%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Best,
Anubhav

Thanks. I agree that the monolithic Firework would make the logic much more simple, though I like the idea of of applying the symmetry check as a powerup (with the default being to exit and defuse - much less complicated) since our use cases often involves unstable structures that break symmetry and are expensive to relax.

One way is to have a monolithic FW with a parameter that controls whether to try the symmetry check. The powerup could simply turn that parameter on.

···

On Sat, Sep 9, 2017 at 5:36 PM, Brandon B [email protected] wrote:

Thanks. I agree that the monolithic Firework would make the logic much more simple, though I like the idea of of applying the symmetry check as a powerup (with the default being to exit and defuse - much less complicated) since our use cases often involves unstable structures that break symmetry and are expensive to relax.

You received this message because you are subscribed to the Google Groups “fireworkflows” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

Visit this group at https://groups.google.com/group/fireworkflows.

To view this discussion on the web visit https://groups.google.com/d/msgid/fireworkflows/e8c54edc-b274-41ad-a1e4-16dbac223c0c%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Best,
Anubhav