ecflow.RepeatDate
- class ecflow.RepeatDate
Bases:
pybind11_object
Allows a node to be repeated using a yyyymmdd format
A node can only have one repeat. The repeat name can be referenced in trigger expressions. The trigger expression referencing a RepeatDate will use date arithmetic Here (/suite/family:YMD + 1) uses date arithmetic only, the result is still an integer
trigger /suite/family:YMD + 1 > 20190101
Constructor:
RepeatDate(variable,start,end,delta)
string variable: The name of the repeat. The current date can referenced in
in trigger expressions using the variable name
int start: Start date, must have format: yyyymmdd
int end: End date, must have format: yyyymmdd
int delta<optional>: default = 1, Always in days. The increment used to update the date
Exception:
Throws a RuntimeError if start/end are not valid dates
Usage:
rep = RepeatDate('YMD', 20050130, 20050203 )
rep = RepeatDate('YMD', 20050130, 20050203, 2)
t = Task('t1',
RepeatDate('YMD', 20050130, 20050203 ))
Accessor methods:
current_index() -> int
Zero-based position of the current date in the sequence.
Computed using calendar-day (Julian-day) arithmetic,
so it is correct even when the sequence crosses a month or year boundary.
Returns 0 at construction / after reset.
current_value() -> int
The current instant as an integer in yyyymmdd format.
- RepeatDate.current_index(self: ecflow.RepeatDate) int
Return the zero-based index of the current date position. Uses calendar-day (Julian-day) arithmetic so the result is correct even for sequences that cross month or year boundaries.
- RepeatDate.current_value(self: ecflow.RepeatDate) object
Return the current date as an integer in yyyymmdd format.
- RepeatDate.end(self: ecflow.RepeatDate) int
Return the end date as an integer in yyyymmdd format
- RepeatDate.name(self: ecflow.RepeatDate) str
Return the name of the repeat.
- RepeatDate.start(self: ecflow.RepeatDate) int
Return the start date as an integer in yyyymmdd format
- RepeatDate.step(self: ecflow.RepeatDate) int
Return the step increment. This is used to update the repeat, until end date is reached