Source code for polaris.tasks.ocean.internal_wave

import os

from polaris.config import PolarisConfigParser as PolarisConfigParser
from polaris.tasks.ocean.internal_wave.default import Default as Default
from polaris.tasks.ocean.internal_wave.init import Init as Init
from polaris.tasks.ocean.internal_wave.rpe import Rpe as Rpe


[docs] def add_internal_wave_tasks(component): """ Add tasks for different internal wave tests to the ocean component component : polaris.tasks.ocean.Ocean the ocean component that the tasks will be added to """ config_filename = 'internal_wave.cfg' base_dir = 'planar/internal_wave' config = PolarisConfigParser( filepath=os.path.join(component.name, base_dir, config_filename) ) config.add_from_package( 'polaris.tasks.ocean.internal_wave', config_filename ) init = Init(component=component, indir=base_dir) init.set_shared_config(config, link=config_filename) for vadv_method in ['standard', 'vlr']: default = Default( component=component, indir=base_dir, init=init, vadv_method=vadv_method, ) default.set_shared_config(config, link=config_filename) component.add_task(default) component.add_task( Rpe( component=component, indir=base_dir, init=init, vadv_method=vadv_method, config=config, ) )