from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler, ItemType """Alias for inputs that expect a simulation parameter .json file as the recipe input.""" energy_simulation_parameter_input = [ InputAlias.any( name='sim_par', description= 'A SimulationParameter object that describes all of the setting for ' 'the energy simulation. If None, some default simulation parameters will ' 'automatically be used. This can also be the path to a SimulationParameter ' 'JSON file.', optional=True, platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.simulation', function='energy_sim_par_to_json') ]) ] """Alias for inputs that expect a measures input.""" measures_input = [ InputAlias.list( name='measures', item_type=ItemType.Generic, description= 'An optional list of measures to apply to the OpenStudio model ' 'upon export. Use the "HB Load Measure" component to load a measure into ' 'Grasshopper and assign input arguments. Measures can be downloaded from the ' 'NREL Building Components Library (BCL) at (https://bcl.nrel.gov/).', default=[], optional=True,
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for inputs that expect a .ddy file as the recipe input.""" ddy_input = [ InputAlias.any( name='ddy', description= 'The path to a .ddy file or an .epw file with design days to be ' 'used for the initial sizing calculation.', platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.ddy', function='ddy_handler') ]) ]
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for inputs that expect an annual schedule as a .csv file.""" schedule_csv_input = [ InputAlias.any( name='schedule', description= 'An annual occupancy schedule, either as a path to a csv file (with ' '8760 rows), a Ladybug Hourly Continuous Data Collection or a HB-Energy ' 'schedule object. This can also be the identifier of a schedule in ' 'your HB-Energy schedule library. Any value in this schedule that is ' '0.1 or above will be considered occupied.', optional=True, platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.schedule', function='schedule_to_csv') ]) ] """Alias for inputs that expect a schedule as a .csv file from a data collection.""" comfort_schedule_csv_input = [ InputAlias.any( name='schedule', description= 'A schedule to specify the relevant times during which comfort ' 'should be evaluated. This must either be a Ladybug Hourly Data ' 'Collection that aligns with the input run_period or the path to a ' 'CSV file with a number of rows equal to the length of the run_period. ' 'If unspecified, it will be assumed that all times are relevant for ' 'outdoor sensors and the energy model occupancy schedules will be '
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias inputs that expect a HBJSON model file as the recipe input.""" hbjson_model_input = [ # grasshopper Alias InputAlias.any( name='model', description='A Honeybee Model to simulate or the path to a HBJSON file ' 'of a Model. This can also be the path to a HBpkl file, though this is only ' 'recommended for cases where the model is extremely large.', platform=['grasshopper'], handler=[ IOAliasHandler( language='python', module='pollination_handlers.inputs.model', function='model_to_json' ), IOAliasHandler( language='csharp', module='Pollination.RhinoHandlers', function='HBModelToJSON' ) ] ), # Rhino alias InputAlias.linked( name='model', description='This input links the model to Rhino model.', platform=['rhino'], handler=[ IOAliasHandler(
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for thermal map air speeds.""" air_speed_input = [ InputAlias.any( name='air_speed', description= 'A single number for air speed in m/s or an hourly data collection ' 'of air speeds that align with the input run_period. This will be ' 'used for all indoor comfort evaluation. Note that the EPW wind speed ' 'will be used for any outdoor sensors. (Default: 0.1).', default='0.1', platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.data', function='value_or_data_to_str') ]) ] """Alias for thermal map wind speeds.""" wind_speed_input = [ InputAlias.any( name='wind_speed', description= 'A single number for meteorological wind speed in m/s or an hourly ' 'data collection of wind speeds that align with the input run period. ' 'This will be used for all indoor comfort evaluation. Note that the ' 'EPW wind speed will be used for any outdoor sensors. (Default: 0.5).', default='0.5', platform=['grasshopper'], handler=[
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for the selection of point-in-time metrics.""" point_in_time_metric_input = [ InputAlias.any( name='metric', description='Either an integer or the full name of a point-in-time metric to ' 'be computed by the recipe. (Default: illuminance). Choose from the following:' '\n* 0 = illuminance\n* 1 = irradiance\n* 2 = luminance\n* 3 = radiance', default='illuminance', platform=['grasshopper'], handler=[ IOAliasHandler( language='python', module='pollination_handlers.inputs.pit', function='point_in_time_metric_to_str' ) ] ) ] """Alias for the selection of point-in-time metrics.""" point_in_time_view_metric_input = [ InputAlias.any( name='metric', description='Either an integer or the full name of a point-in-time metric to ' 'be computed by the recipe. (Default: luminance). Choose from the following:' '\n* 0 = illuminance\n* 1 = irradiance\n* 2 = luminance\n* 3 = radiance',
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for yes/no inputs about whether to filter design days.""" filter_des_days_input = [ InputAlias.any( name='filter_des_days', description= 'A boolean to note whether the ddy file should be filtered to only ' 'include 99.6 and 0.4 design days (True) or all design days in the ddy file ' 'should be used (False).', default=True, platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.bool_options', function='filter_des_days_to_str') ]) ] """Alias for yes/no inputs about whether to skip a view-based overture calculation.""" skip_overture_input = [ InputAlias.any( name='skip_overture', description='A boolean to note whether an ambient file (.amb) should be ' 'generated for an overture calculation before the view is split into smaller ' 'views. With an overture calculation, the ambient file (aka ambient cache) is ' 'first populated with values. Thereby ensuring that - when reused to create ' 'an image - Radiance uses interpolation between already calculated values ' 'rather than less reliable extrapolation. The overture calculation has ' 'comparatively small computation time to full rendering but is single-core ' 'can become time consuming in situations with very high numbers of ' 'rendering multiprocessors.',
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for inputs that set the CPU count by splitting views.""" cpu_count = [ InputAlias.int( name='cpu_count', description= 'The maximum number of CPUs for parallel execution. For local ' 'simulation, this value is ignored and the cpu_count is automatically set to ' 'be equal to the number of workers tasked to the run. For cloud-based runs, ' 'this input can be used to control the resources used for the simulation and, ' 'if unspecified, the default value of 12 will be used.', default=12, platform=['grasshopper']) ]
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for north inputs that can accept both an angle or a north vector.""" north_input = [ InputAlias.any( name='north', description='A number between -360 and 360 for the counterclockwise difference ' 'between the North and the positive Y-axis in degrees. This can ' 'also be Vector for the direction to North. (Default: 0).', default=0, platform=['grasshopper'], handler=[ IOAliasHandler( language='python', module='pollination_handlers.inputs.north', function='north_vector_to_angle' ) ] ) ]
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for inputs that expect a .wea file as the recipe input.""" wea_input = [ InputAlias.any( name='wea', description= 'A Wea object produced from the Wea components that are under ' 'the Light Sources tab. This can also be the path to a .wea or a .epw file.', platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.wea', function='wea_handler') ]) ] """Alias for inputs that expect a .wea file at a timestep of 1.""" wea_input_timestep_check = [ InputAlias.any( name='wea', description= 'A Wea object produced from the Wea components that are under ' 'the Light Sources tab. This can also be the path to a .wea or a .epw file.', platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.wea', function='wea_handler_timestep_check') ]) ]
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for text that filters the simulated radiance grids.""" grid_filter_input = [ InputAlias.str( name='grid_filter', description= 'Text for a grid identifier or a pattern to filter the sensor grids ' 'of the model that are simulated. For instance, first_floor_* will simulate ' 'only the sensor grids that have an identifier that starts with ' 'first_floor_. By default, all grids in the model will be simulated.', default='*', platform=['grasshopper']) ] """Alias for inputs that split sensor grids for parallel execution.""" sensor_count_input = [ InputAlias.int( name='sensor_count', description='Positive integer for the number of sensor grid points per ' 'parallel execution. Lower numbers will result in sensor grids being ' 'split into more pieces and, since each grid piece is run by a separate worker, ' 'this can mean a faster simulation on machines with several CPUs. However ,' 'If the number is too low, the overhad of splitting the grid will not be worth ' 'the time gained through parallelization. (Default: 200).', default=200, platform=['grasshopper']) ] """Alias for inputs that set the minimum number of sensors in split sensor grids.""" min_sensor_count_input = [ InputAlias.int( name='min_sen_count',
from pollination_dsl.alias import InputAlias """Alias for annual daylight/radiation radiance parameters.""" rad_par_annual_input = [ InputAlias.str( name='radiance_par', description= 'Text for the radiance parameters to be used for ray tracing. ' '(Default: -ab 2 -ad 5000 -lw 2e-05).', default='-ab 2 -ad 5000 -lw 2e-05', platform=['grasshopper']) ] """Alias for rtrace (daylight factor + PIT) radiance parameters.""" rad_par_daylight_factor_input = [ InputAlias.str( name='radiance_par', description= 'Text for the radiance parameters to be used for ray tracing. ' '(Default: -ab 2 -aa 0.1 -ad 2048 -ar 64).', default='-ab 2 -aa 0.1 -ad 2048 -ar 64', platform=['grasshopper']) ] """Alias for sky view rtrace radiance parameters.""" rad_par_sky_view_input = [ InputAlias.str( name='radiance_par', description= 'Text for the radiance parameters to be used for ray tracing. ' '(Default: -aa 0.1 -ad 2048 -ar 64).', default='-aa 0.1 -ad 2048 -ar 64', platform=['grasshopper']) ]
from pollination_dsl.alias import InputAlias from queenbee.io.common import IOAliasHandler """Alias for inputs that expect an annual schedule as a .csv file.""" schedule_csv_input = [ InputAlias.any( name='schedule', description= 'An annual occupancy schedule, either as a path to a csv file (with ' '8760 rows), a Ladybug Hourly Continuous Data Collection or a HB-Energy ' 'schedule object. This can also be the identifier of a schedule in ' 'your HB-Energy schedule library. Any value in this schedule that is ' '0.1 or above will be considered occupied.', optional=True, platform=['grasshopper'], handler=[ IOAliasHandler(language='python', module='pollination_handlers.inputs.schedule', function='schedule_to_csv') ]) ]