ecFlow's documentation is now on readthedocs!

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

<style type="text/css">
.highlight .hll

Unknown macro: { background-color}

.highlight

Unknown macro: { background}

.highlight .c

Unknown macro: { color}

/* Comment */
.highlight .err

Unknown macro: { border}

/* Error */
.highlight .k

Unknown macro: { color}

/* Keyword */
.highlight .o

Unknown macro: { color}

/* Operator */
.highlight .cm

Unknown macro: { color}

/* Comment.Multiline */
.highlight .cp

Unknown macro: { color}

/* Comment.Preproc */
.highlight .c1

Unknown macro: { color}

/* Comment.Single */
.highlight .cs

Unknown macro: { color}

/* Comment.Special */
.highlight .gd

Unknown macro: { color}

/* Generic.Deleted */
.highlight .ge

Unknown macro: { font-style}

/* Generic.Emph */
.highlight .gr

Unknown macro: { color}

/* Generic.Error */
.highlight .gh

Unknown macro: { color}

/* Generic.Heading */
.highlight .gi

Unknown macro: { color}

/* Generic.Inserted */
.highlight .go

Unknown macro: { color}

/* Generic.Output */
.highlight .gp

Unknown macro: { color}

/* Generic.Prompt */
.highlight .gs

Unknown macro: { font-weight}

/* Generic.Strong */
.highlight .gu

Unknown macro: { color}

/* Generic.Subheading */
.highlight .gt

Unknown macro: { color}

/* Generic.Traceback */
.highlight .kc

Unknown macro: { color}

/* Keyword.Constant */
.highlight .kd

Unknown macro: { color}

/* Keyword.Declaration */
.highlight .kn

Unknown macro: { color}

/* Keyword.Namespace */
.highlight .kp

Unknown macro: { color}

/* Keyword.Pseudo */
.highlight .kr

Unknown macro: { color}

/* Keyword.Reserved */
.highlight .kt

Unknown macro: { color}

/* Keyword.Type */
.highlight .m

Unknown macro: { color}

/* Literal.Number */
.highlight .s

Unknown macro: { color}

/* Literal.String */
.highlight .na

Unknown macro: { color}

/* Name.Attribute */
.highlight .nb

Unknown macro: { color}

/* Name.Builtin */
.highlight .nc

Unknown macro: { color}

/* Name.Class */
.highlight .no

Unknown macro: { color}

/* Name.Constant */
.highlight .nd

Unknown macro: { color}

/* Name.Decorator */
.highlight .ni

Unknown macro: { color}

/* Name.Entity */
.highlight .ne

Unknown macro: { color}

/* Name.Exception */
.highlight .nf

Unknown macro: { color}

/* Name.Function */
.highlight .nl

Unknown macro: { color}

/* Name.Label */
.highlight .nn

Unknown macro: { color}

/* Name.Namespace */
.highlight .nt

Unknown macro: { color}

/* Name.Tag */
.highlight .nv

Unknown macro: { color}

/* Name.Variable */
.highlight .ow

Unknown macro: { color}

/* Operator.Word */
.highlight .w

Unknown macro: { color}

/* Text.Whitespace */
.highlight .mf

Unknown macro: { color}

/* Literal.Number.Float */
.highlight .mh

Unknown macro: { color}

/* Literal.Number.Hex */
.highlight .mi

Unknown macro: { color}

/* Literal.Number.Integer */
.highlight .mo

Unknown macro: { color}

/* Literal.Number.Oct */
.highlight .sb

Unknown macro: { color}

/* Literal.String.Backtick */
.highlight .sc

Unknown macro: { color}

/* Literal.String.Char */
.highlight .sd

Unknown macro: { color}

/* Literal.String.Doc */
.highlight .s2

Unknown macro: { color}

/* Literal.String.Double */
.highlight .se

Unknown macro: { color}

/* Literal.String.Escape */
.highlight .sh

Unknown macro: { color}

/* Literal.String.Heredoc */
.highlight .si

Unknown macro: { color}

/* Literal.String.Interpol */
.highlight .sx

Unknown macro: { color}

/* Literal.String.Other */
.highlight .sr

Unknown macro: { color}

/* Literal.String.Regex */
.highlight .s1

Unknown macro: { color}

/* Literal.String.Single */
.highlight .ss

Unknown macro: { color}

/* Literal.String.Symbol */
.highlight .bp

Unknown macro: { color}

/* Name.Builtin.Pseudo */
.highlight .vc

Unknown macro: { color}

/* Name.Variable.Class */
.highlight .vg

Unknown macro: { color}

/* Name.Variable.Global */
.highlight .vi

Unknown macro: { color}

/* Name.Variable.Instance */
.highlight .il

Unknown macro: { color}

/* Literal.Number.Integer.Long */
</style>

One possible solution:

#!/usr/bin/env python2.5
import os
import ecflow 
   
defs = ecflow.Defs()
suite = defs.add_suite("operation_suite")
suite.add_repeat( ecflow.RepeatDay(1) )
suite.add_variable("ECF_HOME",os.getenv("HOME") + "/course")
suite.add_variable("ECF_INCLUDE",os.getenv("HOME") + "/course")
suite.add_variable("ECF_FILES",os.getenv("HOME") + "/course/oper")
  
# Defines the triggers for the first cycle
cycle_triggers = "1"
for cycle in ( 0 , 12 ):

    if cycle == 12 :
        last_step = 240
    else:
        last_step = 24
 
    fcycle_fam =  suite.add_family(str(cycle))
    fcycle_fam.add_variable("CYCLE",cycle)
    fcycle_fam.add_variable("LAST_STEP",last_step)
      
    if cycle_triggers != "1" :
        fcycle_fam.add_trigger(cycle_triggers)
                 
    analysis_fam = fcycle_fam.add_family("analysis")
    analysis_fam.add_task("get_observations")
    analysis_fam.add_task("run_analysis").add_trigger("get_observations == complete")
    analysis_fam.add_task("post_processing").add_trigger("run_analysis == complete")
 
    forecast_fam = fcycle_fam.add_family("forecast")
    forecast_fam.add_trigger("analysis == complete")
    forecast_fam.add_task("get_input_data") 
    run_forecast_task = forecast_fam.add_task("run_forecast") 
    run_forecast_task.add_trigger("get_input_data == complete")
    run_forecast_task.add_meter("step",0,last_step,last_step)
 
    archive_fam = fcycle_fam.add_family("archive")
    fam_analsis = archive_fam.add_family("analysis")
    fam_analsis.add_variable("TYPE","analysis")
    fam_analsis.add_variable("STEP","0")
    fam_analsis.add_trigger("../analysis/run_analysis == complete")
    fam_analsis.add_task("save")
    
    for i in range(6,last_step,6):  
        step_fam = fam_analsis.add_family("step_" + str(i))     
        step_fam.add_variable("TYPE","forecast")  
        step_fam.add_variable("STEP",i)  
        step_fam.add_trigger("../forecast/run_forecast:step ge " + str(i))
        step_fam.add_task("save")

    # Defines the triggers for the next cycle
    cycle_triggers = "./" + str(cycle) + " == complete"
    
  • No labels