예제 #1
0
 NumberSource (const BlockModel& al)
   : Number (al),
     source (Librarian::build_item<Source> (al, "source")),
     begin (al.check ("begin") ? new Time (al.submodel ("begin")) : NULL),
     end (al.check ("end") ? new Time (al.submodel ("end")) : NULL),
     state (uninitialized),
     val (-42.42e42)
 { }
예제 #2
0
 ActionWaitDays (const BlockModel& al)
   : Action (al),
     days (al.integer ("days")),
     hours (al.integer ("hours")),
     activated (al.check ("end_time")),
     end_time (1, 1, 1, 1)
 { 
   if (activated)
     end_time = Time (al.submodel ("end_time"));
 }
예제 #3
0
Horizon::Implementation::Implementation (const BlockModel& al)
  : dry_bulk_density (al.number ("dry_bulk_density", -42.42e42)),
    SOM_C_per_N (al.number_sequence ("SOM_C_per_N")),
    C_per_N (al.number ("C_per_N", -42.42e42)),
    SOM_fractions (al.check ("SOM_fractions") 
                   ? al.number_sequence ("SOM_fractions")
                   : std::vector<double> ()),
    turnover_factor (al.number ("turnover_factor")),
    anisotropy (al.number ("anisotropy")),
    attributes (get_attributes (al.submodel_sequence ("attributes"))),
    dimensions (get_dimensions (al.submodel_sequence ("attributes"))),
    nitrification (Librarian::build_item<Nitrification> (al, "Nitrification")),
    secondary (Librarian::build_item<Secondary> (al, "secondary_domain")),
    r_pore_min (al.number ("r_pore_min")),
    primary_sorption_fraction (NAN),
    hor_heat (al.submodel ("HorHeat")),
    CEC (al.number ("CEC", -42.42e42))
{ }
예제 #4
0
 ConditionAfter (const BlockModel& al)
   : Condition (al),
     time (al.submodel ("time"))
 { }
예제 #5
0
 ConditionBefore (const BlockModel& al)
   : Condition (al),
     time (al.submodel ("time"))
 { }
예제 #6
0
 ActionRidge (const BlockModel& al)
   : Action (al),
     ridge (al.submodel ("ridge"))
   { }