Welcome to accim 1.1.0’s documentation!
accim (Adaptive-Comfort-Control-Implemented Model) is a Python package for EnergyPlus building energy models. It transforms models with fixed setpoint temperatures into models with adaptive setpoint temperatures, which follow the outdoor temperature as an adaptive thermal comfort model does, by adding the Adaptive-Comfort-Control-Implementation Script (ACCIS) to the IDF files.
The figure below shows the aim of adaptive setpoint temperatures: keeping the hourly indoor temperatures within the adaptive comfort zone. It plots the hourly operative temperature (green) against the running mean outdoor temperature, with the adaptive cooling (blue) and heating (red) setpoints of ASHRAE 55, for two cities in the present and in 2100. On the left, the simulation results of a naturally ventilated building; on the right, the same building in mixed-mode operation with adaptive setpoint temperatures.
With accim you can:
apply the adaptive setpoint temperatures of the predefined comfort models (international, regional and local) or of a custom model, with air-conditioning, natural ventilation or mixed-mode operation (3. Quick tutorial, 4. Detailed use and explanation of arguments);
apply setpoints based on the adaptive predicted mean vote (aPMV) (Applying aPMV setpoints);
rename the weather files, run the simulations (with the Energy Management System of EnergyPlus, or through its Python API) and make tables and figures of the results (How-to Guides);
run parametric studies, sensitivity analyses and multi-objective optimisations of these controls (Overview of parametric simulation and optimisation);
do the main steps without writing Python, with a graphical user interface (the command
accim-gui, 4.10 Graphical user interface).
If you are new to accim, start with 1. Requirements, 2. Installation and 3. Quick tutorial. If you used accim 0.x, see 9. Migrating from accim 0.x to accim 1.0.0: since accim 1.0.0, the names follow the conventions of Python, and the old names still work.
User guide:
- 1. Requirements
- 2. Installation
- 3. Quick tutorial
- 4. Detailed use and explanation of arguments
- 4.1 First steps
- 4.2 Setting up the target IDFs
- 4.3 Full list of setpoint temperatures
- 4.4 Putting it into practice: Adaptive setpoint temperatures step by step
- 4.5 Renaming epw files for later data analysis
- 4.6 Running simulations
- 4.7 Functions and methods for data analysis; making figures and tables
- 4.8 Setpoints based on the adaptive predicted mean vote (aPMV)
- 4.9 Running the simulations with the Python API of EnergyPlus
- 4.10 Graphical user interface
- 5. Troubleshooting
- 6. Citation
- 7. Credits
- 9. Migrating from accim 0.x to accim 1.0.0
How-to Guides:
- Using
AddAccis()to apply adaptive setpoint temperatures - Using
rename_epw_files()to rename the EPWs for proper data analysis after simulation - Using
run_ep()to directly run simulations with EnergyPlus - Using the class
Table()for data analysis - Full example of adaptive setpoint temperature simulation: IBPSA webinar
- accim: a Python library for adaptive setpoint temperatures in building performance simulations
- Applying aPMV setpoints
Parametric simulation and optimisation:
API Reference:
- accim
- accim package
- Subpackages
- accim.data package
- accim.gui package
- Submodules
- accim.gui.app module
AccimAppAccimApp.ask_from_task()AccimApp.ask_yes_no()AccimApp.close()AccimApp.execute()AccimApp.folderAccimApp.folder_changed()AccimApp.log_text()AccimApp.open_session()AccimApp.poll()AccimApp.process_messages()AccimApp.restore_session()AccimApp.run_task()AccimApp.save_session()AccimApp.session_objects()AccimApp.set_busy()AccimApp.show_error()AccimApp.show_info()AccimApp.tabs()
main()
- accim.gui.forms module
ADD_ACCIS_DEFAULTSAPMV_DEFAULTSAPMV_SETPOINT_FIELDSAPMV_ZONE_FIELDSCUSTOM_MODEL_FIELDSEXISTING_HVAC_AVAILABILITYEXISTING_HVAC_DEFAULTSEXISTING_HVAC_OPTIONSFIGURE_COLORSFIGURE_TYPESFormErrorOUTPUT_TYPESPARAMETRIC_DEFAULTSPARAMETRIC_SCRIPT_TYPESPMV_INPUT_FIELDSPREDEFINED_MODEL_PARAMETERSRENAME_EPWS_DEFAULTSRUN_DEFAULTSSAMPLINGSSCRIPT_TYPESSETPOINT_TYPESTABLE_DEFAULTSTABLE_FREQUENCIESTABLE_TYPESVENTILATION_CONTROLSVRF_AVAILABILITYZONE_FIELDSadd_accis_arguments()apmv_arguments()apmv_zone_row_text()apmv_zone_setpoints()categories_hint()comfort_modes_hint()comfort_standard_choices()epw_files()existing_hvac_arguments()figure_arguments()hours_zones()idf_files()input_idfs()output_idf_count()parametric_arguments()parametric_simulation_count()parse_apmv_zone_setpoints()parse_mapping()parse_number()parse_numbers()parse_parameter_values()parse_zone_arguments()rename_epws_arguments()results_size_arguments()run_ep_arguments()setpoint_ems_code_calls()simulation_csvs()simulations()split_apmv_zone_setpoints()split_zone_arguments()table_arguments()zone_arguments()zone_arguments_problems()zone_field_choices()zone_row_text()
- accim.gui.tasks module
- Module contents
- accim.parametric_and_optimisation package
- Subpackages
- Submodules
- accim.parametric_and_optimisation.analysis module
- accim.parametric_and_optimisation.file_cleanup module
- accim.parametric_and_optimisation.hourly_plotting module
- Data sources
- Variables
- Main functions and methods
ADAPTIVE_COMFORT_MODELSDEFAULT_RCHourlyPlottingMixinHourlyPlottingMixin.attach_hourly_series_by_epw()HourlyPlottingMixin.compute_hourly_indicators()HourlyPlottingMixin.get_hourly_series_by_epw()HourlyPlottingMixin.plot_adaptive_comfort_chart()HourlyPlottingMixin.plot_comfort_screening()HourlyPlottingMixin.plot_hourly_binned_response()HourlyPlottingMixin.plot_hourly_heatmaps()HourlyPlottingMixin.plot_hourly_period()HourlyPlottingMixin.plot_hourly_scatter_matrix()HourlyPlottingMixin.plot_load_duration_curves()HourlyPlottingMixin.plot_monthly_distributions()HourlyPlottingMixin.plot_results_scatter_matrix()
OKABE_ITOadaptive_comfort_band()comfort_categories()read_epw_dry_bulb()running_mean_outdoor_temperature()
- accim.parametric_and_optimisation.main module
- Usage
AccimPredefModelsParamSimOptimisationSimulationParametricSimulationSimulationBaseSimulationBase.ScriptTypeSimulationBase.SupplyAirTempInputMethodSimulationBase.add_epw_suffix_category()SimulationBase.apply_category_mapping()SimulationBase.apply_outputs_preflight()SimulationBase.autocorrect_output_duplicates()SimulationBase.build_simulation_summary()SimulationBase.bypass_addAccisSimulationBase.clear_outputs()SimulationBase.compare_with()SimulationBase.discover_available_outputs()SimulationBase.estimate_optimisation_sims()SimulationBase.export_simulation_summary_json()SimulationBase.filter_simulation_output_csvs()SimulationBase.get_available_parameters()SimulationBase.get_daily_df()SimulationBase.get_daily_df_optimisation()SimulationBase.get_hourly_df()SimulationBase.get_hourly_df_columns()SimulationBase.get_hourly_df_optimisation()SimulationBase.get_hourly_df_parametric()SimulationBase.get_monthly_df()SimulationBase.get_monthly_df_optimisation()SimulationBase.get_output_df()SimulationBase.get_output_df_optimisation()SimulationBase.get_output_meter_df_from_idf()SimulationBase.get_output_meters_df_from_idf()SimulationBase.get_output_var_df_from_idf()SimulationBase.get_output_variables_df_from_idf()SimulationBase.get_outputs_df_from_testsim()SimulationBase.get_runperiod_df()SimulationBase.get_runperiod_df_optimisation()SimulationBase.keep_only_outputs_in_idfs()SimulationBase.load_outputs_optimisation()SimulationBase.load_outputs_parametric()SimulationBase.make_averagesSimulationBase.merge()SimulationBase.merge_all()SimulationBase.output_freqsSimulationBase.output_keep_existingSimulationBase.preflight_report_optimisation()SimulationBase.preflight_report_parametric()SimulationBase.preview_category_mapping()SimulationBase.print_simulation_summary()SimulationBase.run_optimisation()SimulationBase.run_parametric_simulation()SimulationBase.sampling_custom()SimulationBase.sampling_full_factorial()SimulationBase.sampling_full_set()SimulationBase.sampling_lhs()SimulationBase.sampling_morris()SimulationBase.sampling_sobol()SimulationBase.scan_output_objects()SimulationBase.select_outputs()SimulationBase.set_category_mapping()SimulationBase.set_evaluator()SimulationBase.set_mn_filter()SimulationBase.set_output_met_objects_to_idf()SimulationBase.set_output_meters_to_idf()SimulationBase.set_output_readers()SimulationBase.set_output_var_df_to_idf()SimulationBase.set_output_variables_to_idf()SimulationBase.set_outputs_for_simulation()SimulationBase.set_parameters()SimulationBase.set_problem()SimulationBase.temp_ctrl
SimulationComparisonSessionSimulationComparisonSession.compare()SimulationComparisonSession.compare_latest_in_folders()SimulationComparisonSession.compare_latest_sources_in_folders()SimulationComparisonSession.compare_multiple_with_reference()SimulationComparisonSession.compare_selected_outputs()SimulationComparisonSession.get_last_summary()SimulationComparisonSession.save_last_report_json()
compare_latest_pickles_in_folders()compare_multiple_pickles_with_reference()compare_simulation_instances()get_mdd_file_as_df()get_rdd_file_as_df()parse_mtd_file()preflight_report()
- accim.parametric_and_optimisation.mn_filter module
- accim.parametric_and_optimisation.objectives module
- accim.parametric_and_optimisation.optimisation_progress module
- accim.parametric_and_optimisation.parameters module
- Usage
ASTtolCATCATcoolOffsetCATheatOffsetComfModComfStandCoolSeasonEndCoolSeasonStartCustAST_ACSTallCustAST_ACSTaulCustAST_ACSToffsetCustAST_AHSTallCustAST_AHSTaulCustAST_AHSToffsetCustAST_ASTallCustAST_ASTaulCustAST_ASToffsetCustAST_mCustAST_nHVACmodeMaxTempDiffVOFMaxWindSpeedMinOToffsetMinTempDiffVOFMultiplierVOFParameterSetpointAccVSToffsetVentCtrlaccis_parameter()get_available_params_accim_custom_models()get_available_params_accim_predef_models()get_available_params_apmv_setpoints()
- accim.parametric_and_optimisation.params_dicts module
- accim.parametric_and_optimisation.patches module
- accim.parametric_and_optimisation.plotting module
- Usage
PlottingMixinPlottingMixin.get_filtered_results_table()PlottingMixin.plot_best_compromise_solutions()PlottingMixin.plot_categorical_boxplots()PlottingMixin.plot_hourly_lines()PlottingMixin.plot_hourly_scatter()PlottingMixin.plot_mn_filter()PlottingMixin.plot_pairwise_scatter_matrix()PlottingMixin.plot_parallel_coordinates()PlottingMixin.plot_parametric_contour()PlottingMixin.plot_parametric_density_2d()PlottingMixin.plot_parametric_distributions()PlottingMixin.plot_parametric_ecdf()PlottingMixin.plot_parametric_heatmap()PlottingMixin.plot_parametric_lines()PlottingMixin.plot_parametric_radar()PlottingMixin.plot_parametric_scatter()PlottingMixin.plot_pareto_front()PlottingMixin.prepare_hourly_long_df()
- accim.parametric_and_optimisation.utils module
- Module contents
AccimPredefModelsParamSimHourlyPlottingMixinHourlyPlottingMixin.attach_hourly_series_by_epw()HourlyPlottingMixin.compute_hourly_indicators()HourlyPlottingMixin.get_hourly_series_by_epw()HourlyPlottingMixin.plot_adaptive_comfort_chart()HourlyPlottingMixin.plot_comfort_screening()HourlyPlottingMixin.plot_hourly_binned_response()HourlyPlottingMixin.plot_hourly_heatmaps()HourlyPlottingMixin.plot_hourly_period()HourlyPlottingMixin.plot_hourly_scatter_matrix()HourlyPlottingMixin.plot_load_duration_curves()HourlyPlottingMixin.plot_monthly_distributions()HourlyPlottingMixin.plot_results_scatter_matrix()
OptimisationSimulationParametricSimulationSimulationBaseSimulationBase.ScriptTypeSimulationBase.SupplyAirTempInputMethodSimulationBase.add_epw_suffix_category()SimulationBase.apply_category_mapping()SimulationBase.apply_outputs_preflight()SimulationBase.autocorrect_output_duplicates()SimulationBase.build_simulation_summary()SimulationBase.bypass_addAccisSimulationBase.clear_outputs()SimulationBase.compare_with()SimulationBase.discover_available_outputs()SimulationBase.estimate_optimisation_sims()SimulationBase.export_simulation_summary_json()SimulationBase.filter_simulation_output_csvs()SimulationBase.get_available_parameters()SimulationBase.get_daily_df()SimulationBase.get_daily_df_optimisation()SimulationBase.get_hourly_df()SimulationBase.get_hourly_df_columns()SimulationBase.get_hourly_df_optimisation()SimulationBase.get_hourly_df_parametric()SimulationBase.get_monthly_df()SimulationBase.get_monthly_df_optimisation()SimulationBase.get_output_df()SimulationBase.get_output_df_optimisation()SimulationBase.get_output_meter_df_from_idf()SimulationBase.get_output_meters_df_from_idf()SimulationBase.get_output_var_df_from_idf()SimulationBase.get_output_variables_df_from_idf()SimulationBase.get_outputs_df_from_testsim()SimulationBase.get_runperiod_df()SimulationBase.get_runperiod_df_optimisation()SimulationBase.keep_only_outputs_in_idfs()SimulationBase.load_outputs_optimisation()SimulationBase.load_outputs_parametric()SimulationBase.make_averagesSimulationBase.merge()SimulationBase.merge_all()SimulationBase.output_freqsSimulationBase.output_keep_existingSimulationBase.preflight_report_optimisation()SimulationBase.preflight_report_parametric()SimulationBase.preview_category_mapping()SimulationBase.print_simulation_summary()SimulationBase.run_optimisation()SimulationBase.run_parametric_simulation()SimulationBase.sampling_custom()SimulationBase.sampling_full_factorial()SimulationBase.sampling_full_set()SimulationBase.sampling_lhs()SimulationBase.sampling_morris()SimulationBase.sampling_sobol()SimulationBase.scan_output_objects()SimulationBase.select_outputs()SimulationBase.set_category_mapping()SimulationBase.set_evaluator()SimulationBase.set_mn_filter()SimulationBase.set_output_met_objects_to_idf()SimulationBase.set_output_meters_to_idf()SimulationBase.set_output_readers()SimulationBase.set_output_var_df_to_idf()SimulationBase.set_output_variables_to_idf()SimulationBase.set_outputs_for_simulation()SimulationBase.set_parameters()SimulationBase.set_problem()SimulationBase.temp_ctrl
SimulationComparisonSessionSimulationComparisonSession.compare()SimulationComparisonSession.compare_latest_in_folders()SimulationComparisonSession.compare_latest_sources_in_folders()SimulationComparisonSession.compare_multiple_with_reference()SimulationComparisonSession.compare_selected_outputs()SimulationComparisonSession.get_last_summary()SimulationComparisonSession.save_last_report_json()
adaptive_comfort_band()comfort_categories()compare_latest_pickles_in_folders()compare_multiple_pickles_with_reference()compare_simulation_instances()preflight_report()read_epw_dry_bulb()running_mean_outdoor_temperature()
- accim.run package
- accim.sim package
- Subpackages
- Submodules
- accim.sim.accis module
- accim.sim.accis_single_idf module
- accim.sim.accis_single_idf_funcs module
- accim.sim.apmv module
- accim.sim.apmv_setpoints module
- accim.sim.arguments module
- accim.sim.build module
- accim.sim.chile_funcs module
- accim.sim.generation module
CombinationGenerationArgumentsGenerationArguments.air_conditioned()GenerationArguments.categoryGenerationArguments.category_cooling_offsetGenerationArguments.category_heating_offsetGenerationArguments.comfort_modeGenerationArguments.comfort_standardGenerationArguments.cooling_season_endGenerationArguments.cooling_season_startGenerationArguments.custom_cooling_lower_limitGenerationArguments.custom_cooling_offsetGenerationArguments.custom_cooling_upper_limitGenerationArguments.custom_heating_lower_limitGenerationArguments.custom_heating_offsetGenerationArguments.custom_heating_upper_limitGenerationArguments.custom_interceptGenerationArguments.custom_slopeGenerationArguments.hvac_modeGenerationArguments.max_wind_speedGenerationArguments.min_opening_factorGenerationArguments.min_outdoor_temp_offsetGenerationArguments.name_suffixGenerationArguments.opening_factor_max_temp_diffGenerationArguments.opening_factor_min_temp_diffGenerationArguments.setpoint_accuracyGenerationArguments.setpoint_tolerance_endGenerationArguments.setpoint_tolerance_startGenerationArguments.setpoint_tolerance_stepGenerationArguments.tolerances()GenerationArguments.ventilation_controlGenerationArguments.ventilation_setpoint_offset
OutputIdfscombinations()output_name()set_combination()zone_arguments_errors()zone_input_arguments()
- accim.sim.model module
- accim.sim.outputs module
add_detailed_outputs()add_ems_debug_output()add_output_control_files()add_simplified_outputs()add_standard_outputs()add_variable_dictionary()enable_sizing_calculations()output_variables_dataframe()remove_duplicated_outputs()remove_existing_outputs()select_custom_outputs()take_output_dataframe()
- accim.sim.people module
- accim.sim.prompts module
- accim.sim.results_size module
FREQUENCIESMEMORY_PER_VALUESIZE_COLUMNSSimulationSizeSimulationSize.csvSimulationSize.csv_memorySimulationSize.csv_valuesSimulationSize.describe()SimulationSize.describe_series()SimulationSize.esoSimulationSize.keptSimulationSize.megabytes()SimulationSize.meter_csvSimulationSize.mtrSimulationSize.notesSimulationSize.otherSimulationSize.seriesSimulationSize.sqlSimulationSize.total
estimate_simulation_size()format_size()
- accim.sim.standards module
- accim.sim.targets module
- accim.sim.windows module
OPENING_COMPONENTSVENTILATION_LIMITSVENTILATION_OBJECTSafn_openings()control_ventilation_objects()exterior_subsurface_zones()is_natural_ventilation()release_occupant_ventilation_controls()remove_hybrid_ventilation_managers()simulates_air_distribution_with_windows()subsurface_zones()uses_airflow_network()
- Module contents
- accim.utils package
- Submodules
- accim.utils.accim_args module
- accim.utils.editing module
amend_idf_version_from_dsb()convert_standard_to_comfort_thermostats()get_available_fields()inspect_thermostat_objects()modify_timesteps()modify_timesteps_path()reduce_runtime()remove_accents()remove_accents_in_idf()set_occupancy_to_always()set_occupancy_to_always_path()set_operative_temp_control()transform_ddmm_to_int()
- accim.utils.ems_code module
- accim.utils.outputs module
- accim.utils.people module
- accim.utils.session module
- accim.utils.verification module
- accim.utils.versions module
- accim.utils.workspace module
- Module contents
AccimSimulationVerifierWorkspaceArtifactCleaneramend_idf_version_from_dsb()convert_standard_to_comfort_thermostats()get_accim_args()get_accim_args_flattened()get_available_fields()get_energyplus_spaces()get_idd_path_from_ep_version()get_idf_hierarchy()get_idf_hierarchy_with_people()get_people_definition()get_people_hierarchy()get_people_instances()get_people_names_for_ems()get_people_objects()get_setpoint_ems_code()get_spaces_from_spacelist()identify_variable_key_pattern()inspect_thermostat_objects()is_people_instance()load_session()modify_timesteps()modify_timesteps_path()print_available_outputs_modprint_setpoint_ems_code()read_eso_using_readvarseso()reduce_runtime()remove_accents()remove_accents_in_idf()save_session()set_occupancy_to_always()set_occupancy_to_always_path()set_operative_temp_control()transform_ddmm_to_int()update_idf_version()verify_accim_simulation()
- Submodules
- accim.constants module
- accim.energyplus module
- accim.lists module
- Module contents
- Subpackages
- accim package
Documentation for previous versions: