External effects

class freshkiss3d.TopographySource
Parameters
  • times (list(float)) – Times for which source is given

  • sources (list(float) (same size as times)) – Homogeneous in space topography source.

  • sources_cell (float[NC] or list(float[NC])) – Topography source defined for each cell.

  • sources_funct (function(x,y) or list(function(x,y)) (same size as times)) – Heterogeneous in space topography source.

  • source_unit (string) – Topography source unit=’m’ or ‘m/s’ (default=’m/s’). m/s: continuous distribution of the source over time. m: sparse distribution of the source over time (the source is triggered at specified times).

  • cells (list(int)) – Cells on which to apply topography source (default: whole domain)

scheduler

Scheduler that triggers height source at given times (when unit=’m’)

Type

freshkiss3d.Scheduler

Examples using freshkiss3d.TopographySource

Topography source

Topography source

Topography source
class freshkiss3d.HeightSource
Parameters
  • times (list(float)) – Times for which source is given

  • sources (list(float) (same size as times)) – Homogeneous in space height source.

  • sources_funct (function(x,y) or list(function(x,y)) (same size as times)) – Heterogeneous in space height source.

  • source_unit (string) – Height source unit=’m’ or ‘m/s’ (default=’m/s’). m/s: continuous distribution of the source over time. m: sparse distribution of the source over time (the source is triggered at specified times).

  • cells (list(int)) – Cells on which to apply height source (default: whole domain)

scheduler

Scheduler that triggers height source at given times (when unit=’m’)

Type

freshkiss3d.Scheduler

Examples using freshkiss3d.HeightSource

Height source

Height source

Height source
class freshkiss3d.TracerSource
Parameters
  • times (list(float)) – Times for which source is given

  • sources (list(float) (same size as times)) – Homogeneous in space tracer source.

  • sources_funct (function(x,y,z) or list(function(x,y,z)) (same size as times)) – Heterogeneous in space tracer source.

  • source_unit (string) – Tracer source unit=’[T]’, ‘[T]/s’, ‘kg/s’ or ‘kg’ (default=’[T]/s’). [T]/s: continuous distribution of the source over time. [T]: sparse distribution of the source over time (the source is triggered at specified times). For species, instead of giving the source in kg/m3 you can give the source in kg, then source term is applied based on source in kg and total cells’ volume in m3.

  • tracer_label (string) – Tracer on which to apply source (for multiple tracers) (default=None). If tracer_label=’temperature’ then [T] means Celcius degree. If tracer_label=’salinity’ or ‘species’ then [T] means kg/m3.

  • cells (list(int)) – Cells on which to apply tracer source (default: whole domain)

scheduler

Scheduler that triggers tracer source at given times (when unit=’kg’)

Type

freshkiss3d.Scheduler

Examples using freshkiss3d.TracerSource

Tracer source

Tracer source

Tracer source
class freshkiss3d.WindEffect
Parameters
  • velocity (float[]) – Wind velocity in m/s

  • orientation (float[size(wind_velocity)]) – Wind orientation in Azimuth degree (North=0°;East=90°;South=180°;West=270°) (x pointing towards East and y towards North)

  • times (float[size(wind_velocity)]) –

  • friction_law (string ('Imberger_Patterson', 'Stefan_Ford', 'Coantic')) – Friction law (default: ‘Imberger_Patterson’)

  • friction_law_funct (function of wind_velocity) – Friction cefficient law (default: None)

static from_file()

Initialize Wind from file

interpolate_orientation()

Interpolate orientation over time and returns value of wind orientation at current time

interpolate_velocity()

Interpolate velocity over time and returns value of wind velocity at current time

Examples using freshkiss3d.WindEffect

Wind effect

Wind effect

Wind effect
class freshkiss3d.WheelEffect
The usage of this class is:
  • Contruct a Wheel.

  • In the time’s loop:
    • Call Wheel::rotates to provide time’s information so paddle’s angles are computed.

    • Loop on mesh vertices.
      • Call Wheel::set_vertex.

      • If true is returned, call Wheel::elementary_force.

      • If returned value greater that 0, get the elementary forces with Wheel::get_fxg.

    • Continue with next time’s loop iteration.

Other methods Wheel::glo2loc, Wheel::loc2glo, Wheel::loc2cyl, Wheel::cyl2loc are provided for convenience and completness, but are useless in common usage.