Hello all,
Trigger can set parameters and there's a
Cactus::terminate_next
parameter (src/param.ccl) that you can set.
You may need to then add `Cactus::terminate_next = no`) into your parfile (so that when the checkpoint recovers the steered value of terminate_next is overwritten).
Yours, Roland
[CAUTION: Non-UBC Email]
Ooh, you are using the "Trigger" thorn. I thought you were using "TerminationTrigger". So that's an option -- use that thorn instead.
Otherwise, if you find your requested feature convenient, then please go ahead and implement it! It would be a nice addition to Cactus.
-erik
On Jun 4, 2026, at 10:19, Jordan Nicoules jnicoules@ua.pt wrote:
Hi Erik,
Thank you for your reply! I know of CCTK_TerminateNext, I actually use it in one of my thorns (so I could hack it to achieve what I want). In fact, a call to this function is what I would add to Trigger.
My point is more: with the existing thorns, is there a way to terminate a simulation while it's running (and before its expected end based on final time/iteration), with a parfile directive, without:
- manually editing the termination file
- reaching walltime
- having NaNs
- and such edge cases.
Something that would be like:
Trigger::Trigger_Checked_Variable [0] = "ADMBase::lapse" Trigger::Trigger_Reduction [0] = "minimum" Trigger::Trigger_Relation [0] = "<" Trigger::Trigger_Checked_Value [0] = 0.2 Trigger::Trigger_Reaction [0] = "terminate" # <-- This doesn't exist as far as I understandThanks,
Jordan
From: Users <users-bounces@einsteintoolkit.org mailto:users-bounces@einsteintoolkit.org> on behalf of Erik Schnetter via Users <users@einsteintoolkit.org mailto:users@einsteintoolkit.org> Sent: Thursday, June 4, 2026 14:57 To: users@einsteintoolkit.org mailto:users@einsteintoolkit.org Subject: Re: [Users] Automatic termination trigger mid-run
CUIDADO: Email de um sistema externo. Cuidado com links, anexos e pedidos de dados/senhas. CAUTION: Email from an external system. Be careful with links, attachments, and requests for data/passwords. You can call the function `CCTK_TerminateNext`, which will stop the simulation gracefully after the current iteration finishes. This is built-in, you do not need a special thorn for this.
This is how TerminationTrigger is implemented: It calls this function when a certain file is created.
-erik
On Jun 4, 2026, at 09:31, Jordan Nicoules via Users users@einsteintoolkit.org wrote:
Dear all,
I was wondering if there was a built-in way to trigger the termination of a simulation when something specific happens, along the lines of what Trigger does to steer quantities. From what I understand, Trigger does not offer that possibility, and TerminationTrigger checks either a file or a time limit. What I'm considering would be more along the lines of "an apparent horizon is found so trigger termination", in order to steer some parameters at recovery.
If there's no such explicit way, I'm happy to try to implement that in Trigger. I actually have ideas of other small improvements to Trigger that I could try contributing as well (namely, increase the maximum number of triggers and allow one trigger to have multiple consequences at once).
Unfortunately I won't be able to join the weekly call today to discuss this directly.
Best,
Jordan _______________________________________________ Users mailing list Users@einsteintoolkit.org mailto:Users@einsteintoolkit.org http://lists.einsteintoolkit.org/mailman/listinfo/users