Skip to main content

Changelog

9.3.0 (2024-12-19)

Bug Fixes

  • delta profile when 2 result sets have different periods (#741) (52359f1)
  • don't raise error when missing time series on token collection (65d417a)
  • electricity consumer was not included in duplicate names (e3e1e6a)
  • ensure emission names are unique (2bbb989)
  • ensure unique names across facility_inputs and models (0b5e0ce)
  • ensure unique time_series names (813b500)

Documentation

Miscellaneous Chores

  • minor fixes in builders (9b54325)
  • mypy fixes (add6842)
  • pin ubuntu runner images (ccbfe69)
  • update pre-commit to v4 (#742) (8542c6b)
  • upgrade dependencies for week 49. Auto-generated by devCalc (fe2a52e)
  • upgrade dependencies for week 50. Auto-generated by devCalc (#733) (1390f21)
  • upgrade dependencies for week 51. Auto-generated by devCalc (#744) (48d4bb2)

Code Refactoring

9.2.0 (2024-11-29)

Features

  • get json schema for ecalc yaml in cli (#715) (43bf19a)

Bug Fixes

  • check that time series file exists (#716) (b2daf23)
  • flow diagram generation (b7a6dc9)
  • get max standard rate when compressor train has downstream choke (#703) (c22aaaf)
  • raise error if yaml file is empty or not a valid yaml object (#712) (79f0072)

Documentation

  • docs were not correctly updated for v9.1 release (#717) (fc849bd)

Miscellaneous Chores

Code Refactoring

  • create energy interfaces (9527609)
  • implement emitter interface (c463ba8)
  • move EosModel into fluid (82b68a5)
  • move fluid.py into common (e3973aa)
  • remove dto from CompressorWithTurbine (dc7092b)
  • remove dto import in core turbine (1259672)
  • use builders in venting emitter tests (#714) (da54989)

9.1.0 (2024-11-14)

Bug Fixes

  • bug in get maximum standard rate for variable speed train with maximum power (#694) (42ce562)
  • max standard rate when pressure control is UPSTREAM_CHOKE (#661) (962ce42)
  • missing discriminator keyword error message (a0ee229)

Documentation

  • adding figure to show surge line, control margin and stonewall on compressor chart (#695) (cdf301b)
  • change readme for test folder to include changes to docker-compose file (00cb459)
  • try to make release-please create pr for 9.1.0 (#679) (adb5bf5)
  • update docs and migration guide with new requirements for control margin and generic charts (#686) (f2c939f)

Miscellaneous Chores

  • bump NeqSim version to 3.0.5 (#693) (e2bef51)
  • changing algorithm for get max rate for streams (#684) (c13ae30)
  • clean up TimeSeriesRate and remove reindex from consumer (#668) (c435999)
  • move tests outside src directory (1fca841)
  • remove extensions from devcontainer not needed (#674) (5399a92)
  • remove warning stating that control margin is experimental (#692) (45ad389)
  • update dependencies week 46 (#696) (6bd1a7a)
  • update docs for running tests (97245f2)
  • upgrade dependencies for week 45 (#689) (1980b11)

Tests

  • add new service to test/docker-compose.yml to run all tests (d3b132e)
  • add pytest filterwarnings with error::DeprecationWarning as baseline (87e2d8a)
  • allow both validation and not in yaml builders (ec32fc8)
  • introduce yaml builders (75a73a8)
  • remove unnecessary asset configuration service (9543bfb)
  • resource- and configuration service fixtures (7775eb8)
  • simplify venting emitter error tests (2191c52)

9.0.0 (2024-10-31)

⚠ BREAKING CHANGES

  • control margin required for compressors (#635)

Bug Fixes

  • missing validation on venting emitter type oil volume (#662) (68ef074)
  • some consumer or emitter validation (7f808da)
  • support python types in DiscriminatorWithFallback (44dbb50)
  • validate lengths after data validation (a2e3f59)

Documentation

  • changed from dockerfile to docker-compose.yml (48732d4)
  • inform how to run tests locally (#675) (15fdf2f)

Miscellaneous Chores

  • automatic ruff fixes for python 3.11 (77897a4)
  • avoid tests to reference other tests except fixtures (4b15aab)
  • back to python 3.8 to make 3.11 changes in separate commit (6e88619)
  • change to use python 3.11 as default (d2a9145)
  • control margin required for compressors (#635) (2b3ea2a)
  • make it easier to generate changelog on release (#660) (66c7c10)
  • make ruff happy (9d7d23f)
  • more info on python 3.11 minimum (8664182)
  • refix additional python 3.11 ruff complaints (0a711a3)
  • release 9.0.0 (#677) (c4f238a)
  • remove python 3.8,3.9,3.10, add 3.13 support (bd592b4)
  • remove unused code (dbdb6dd)
  • remove unused code (436c05b)
  • run ruff with python 3.11 (2981ced)
  • update changelog regarding python support (2e8cb13)
  • update pr template to reflect next.md change (dcbd43a)
  • update to python 3.11 syntax (a2c4a74)
  • upgrade dependencies for week 43 (#657) (19ef808)

Code Refactoring

  • consumer system v2 types (a7177b1)
  • move generator to formatter (0937014)
  • numpy2 ready - avoid Numpy DeprecationWarnings (7cbf9db)
  • reference service interface (d8f28ab)
  • set defaults in yaml (cdf3864)
  • use Periods instead of datetime for temporal model dicts (4068795)

Tests

  • remove dto cases (400374d)
  • update and fix tests (7c1f2e6)
  • use pytest marker and run stp/ltp tests in Docker (c304705)
  • use yaml model in requested pressure test (8c855e1)

8.26.0 (2024-10-16)

Bug Fixes

Miscellaneous Chores

Code Refactoring

Tests

  • use column id instead of index (2760c05)

8.25.0 (2024-10-10)

⚠ BREAKING CHANGES

  • cli: Removed ecalc show results from the cli. This feature is assumed to be of little use and causes additional maintenance.

Features

  • cli: remove ecalc show results command (6d1f104)

Miscellaneous Chores

Tests

  • test yaml categories instead of dto (29cdaab)

8.24.0 (2024-10-02)

Bug Fixes

  • make sure default pressure control is set for all trains (b233444)

Miscellaneous Chores

8.23.0 (2024-09-26)

⚠ BREAKING CHANGES

  • H2O no longer supported in fluid composition, use 'water'

Features

  • add adjustment factor for models (new) (#611) (63010f3)

Documentation

Miscellaneous Chores

Code Refactoring

  • don't use dto in DirectExpressionConsumerFunction (42b6774)
  • into ChartCurve move (89ec20d)
  • move ChartAreaFlag (433ef35)
  • move ComponentType to common (8dbd146)
  • move compressor charts into common (de98661)
  • move compressor charts into common (e871bb8)
  • move consumption type to common (3aec497)
  • move enums/types (e3135f6)
  • move VariablesMap (1a1e2a2)
  • remove dto module imports (b61d56e)
  • remove unnecessary validation (4c5af25)
  • remove unused properties (7659111)
  • rename dto charts (64b2d00)
  • time series collection, resource handling (cf80ce8)
  • use yaml objects in mapper (ef21d6f)

8.22.0 (2024-09-19)

⚠ BREAKING CHANGES

  • Validation is more strict than before.

Features

Bug Fixes

  • avoid RuamelYamlModel becoming an abstract class (d0548e7)
  • unexpected keyword argument (4797d46)

Documentation

  • improve documentation around PRESSURE_CONTROL (#610) (94dbce9)
  • Moved YAML Keywords from level 2 to level 1 section new (#575) (145deab)
  • swap order of migration guides (#571) (b1d4e88)
  • update changelogs (#587) (0537ce4)
  • update notebooks with poetry instructions (9cfcd47)

Miscellaneous Chores

Code Refactoring

  • add inlet/outlet stream also for compressor train results (#590) (c27e5bd)
  • avoid using dtos in core (a3683c1)
  • introduce resource protocol (dac5789)
  • move target pressure status from stages to compressor train (#589) (098cfa9)
  • remove pressure before choking (#609) (02f9099)
  • return compressor stage result when only stage is calculated for simplified train (#592) (9ef52d3)
  • yaml model class and reader (50f41ab)

Continuous Integration

8.21.0 (2024-08-26)

⚠ BREAKING CHANGES

  • do not allow pressure drop ahead of stage for simplified trains (#570)
  • do not allow control margin for simplified variable speed train (#569)
  • do not allow 0 efficiency in input chart (#565)

Bug Fixes

Documentation

Miscellaneous Chores

  • do not allow 0 efficiency in input chart (#565) (a38bb28)
  • do not allow control margin for simplified variable speed train (#569) (82d7e58)
  • do not allow pressure drop ahead of stage for simplified trains (#570) (06ef021)
  • make sure that pressure calculation tolerances are the same at different places in the code (#532) (736984d)
  • ruff manual fixes (d02b41b)
  • run ruff on all files (d5ea430)
  • run ruff-format all files (6880e12)
  • update dependencies through devcalc (6243717)
  • update ruff and replace black (a2a3e03)

8.20.0 (2024-08-07)

Bug Fixes

  • read requested pressures in compressor system (#557) (8117014)

Miscellaneous Chores

8.19.0 (2024-07-31)

Features

  • implement adjustment factors for genset (#555) (4c84931)

Bug Fixes

  • error message for compressor model in turbine (8b57915)
  • pass enum value to literal string type (212b01f)

Miscellaneous Chores

Code Refactoring

  • move asset result classes (590d076)
  • move asset result generation (1725d53)
  • remove double import (60cf1c6)
  • reusable protocols for tabular data (eda51f0)

8.18.1 (2024-06-28)

Features

  • validate model references and types (dd8d701)

Documentation

Code Refactoring

  • add ModelReference type (11cb65b)

8.18.0 (2024-06-25)

Features

  • make version comparable (8ea5b2f)

Bug Fixes

  • avoid usage of packaging (4121f5b)
  • docs: issue with anchor links in search (70b4f8e)
  • error message for new pfs columns (#511) (7b4ea11)
  • implement YamlModel specific errors (f0c317a)

Documentation

  • change TURBINE_LOAD to TURBINE_LOADS (#520) (9b2bf1e)
  • clean up documentation around compressor modelling including adding some missing keywords (#528) (26d4aba)
  • corrected the WATER_PROD rate to meet the max pump chart capacity (#531) (0cfe517)
  • update advanced model (#522) (e8d4b34)
  • update changelog and migration guide (#509) (e5311d1)
  • update documentation about fluid models adding missing yaml keywords (#524) (8bd68a1)
  • update drogon to use input files (#530) (b6d632e)

Miscellaneous Chores

Code Refactoring

  • move tabular exceptions into tabular domain (4922989)
  • remove AssetTSVPrognosis (c2d9dc9)
  • remove result from generator (9a2f9a9)
  • remove unnecessary id for column (30dfe19)
  • separate formatter from exporter (2cc9c8f)

8.17.0 (2024-06-04)

Miscellaneous Chores

  • add support to manually create prereleases (#501) (6a1afa3)
  • docs: update documentation (9cf339b)
  • fix katex equations (d19b75e)
  • improve error message for missing header in input csv files (#498) (b146eb4)
  • make prerelease behave differently (#503) (f234f8e)
  • make prerelease behave differently with input vars (#504) (ca27794)

8.16.0 (2024-05-31)

⚠ BREAKING CHANGES

  • New unit-format for venting emitters, aligned to what is used in other parts of yaml-file. ECALC-1059

Features

  • add eletrical- and mechanical power to asset (#479) (464047f)

Bug Fixes

  • detect duplicate keys in yaml file and raise error (#438) (cfeb006)
  • do not allow for negative recirculation if rate is above max flow rate for a compressor chart (#403) (86bf31e)
  • ensure regularity is evaluated for all installations when only venting emitters (#468) (0e6b248)
  • error when only venting emitters are specified for an installation (#449) (017560d)
  • max power from shore values (#490) (1c7a4a1)
  • use custom type pydantic class to wrap ndarray and avoid validation problem (#487) (ab2877e)
  • wrong unit max power from shore (#491) (f881335)

Documentation

Miscellaneous Chores

Continuous Integration

  • docs: fix environment (a6c60fa)
  • docs: set deploy environment for easier tracking (150a41a)

8.15.0 (2024-04-19)

Bug Fixes

  • add volume query for venting emitters oil type (8cca29a)

Miscellaneous Chores

  • check that the emitter type is oil_volume (1f9e00b)

8.14.0 (2024-04-18)

Features

Miscellaneous Chores

  • update libeCalc deps for 8.14 release (#436) (3184a30)

8.13.0 (2024-04-15)

⚠ BREAKING CHANGES

  • add type and multiple emissions for venting emitters (#424)

Bug Fixes

  • a few things that were left out when the failure_status were refactored (#432) (1e4acce)

Documentation

  • add changelog for 8.12 release (effaf85)
  • correct links for LOAD and FUELRATE keywords (#428) (1df541a)
  • update changelog and migration guide for v8.4 (#430) (5f74621)

Miscellaneous Chores

  • add type and multiple emissions for venting emitters (#424) (4603dc4)
  • update documentation to reflect that None is not a valid choice for pressure control (#427) (6ff1f2a)

Tests

8.12.0 (2024-04-04)

Features

  • add control margin to single speed compressor charts (#418) (472e592)

Bug Fixes

  • issue with invalid dates in temporal model (dc33776)
  • maximum rate for simplified compressor train (#421) (18235d5)
  • support control margin for single speed compressor stage (d0bebd5)
  • use yaml expression type for installation (#412) (4a2bdf9)
  • variables validation (7a66d54)

Documentation

  • update control margin keyword (472e592)

Miscellaneous Chores

Code Refactoring

  • make calculations inside single speed compressor train point in time (952309a)
  • reference parameter first for delta profile (#416) (73f6175)
  • set target pressures in compressor train and compressor stage models for failure status evaluations (#415) (952309a)

8.11.0 (2024-03-18)

Features

  • add file context to model validation error (#401) (0a75da4)
  • check that file exist when validating yaml for run (#388) (441722f)
  • validate expression reference tokens (#404) (2af9d13)

Bug Fixes

  • add control margin to compressor stage validation (#405) (0f1e6f8)

Documentation

Miscellaneous Chores

  • allow venting emitters without fuelconsumers (#392) (f75f18f)
  • also rounding of results for show command, cache and after resampling (4b04729)
  • fix failing tests (4b04729)
  • sum and split electrical and mechanical power (#406) (86754cc)
  • switch license to LGPLv3 (424635e)
  • update contribution docs (b428c03)
  • update snapshots (4b04729)
  • upgrade dependencies (#410) (016c0bd)
  • upgrade node to 18 for codespace (#399) (14c1793)

Code Refactoring

  • all rounding of numers to a given precision is now performed after all calculations are finished (#400) (4b04729)
  • move rounding to result objects (#402) (383e7f6)
  • remove unnecessary collection handling in expression (#390) (650aa74)

8.10.0 (2024-02-16)

Bug Fixes

  • add name constraints to yaml classes (#358) (f586181)
  • add pydantic ndarray type (d005ed4)
  • convert numpy to python (2be1736)
  • custom date format in json (#359) (d62e650)
  • error when creating references (ed1060e)
  • expression error messages (#361) (6a62db5)
  • generate schema for energy usage models (c448942)
  • generate schema for models and generator set model (b87fd2f)
  • get_max_rate for single speed train (00cd9c5)
  • get_max_rate for variable speed train with and without multiple streams and pressures (#374) (00cd9c5)
  • issue with TimeSeriesBoolean becoming float (3622927)
  • libecalc: handle dict, list and expression when parsing expression (1b2ee32)
  • libecalc: init pydantic v2 update (158b90d)
  • libecalc: optional pressure control (42cedb7)
  • libecalc: pydantic models not automatically parsed/converted (af68417)
  • libecalc: results serialization and parsing (44b3f57)
  • libecalc: tests (edc9c4c)
  • libecalc: update pydantic (1ab5105)
  • none to nan conversion (e8b720a)
  • remove deprecated validator (9765874)
  • remove generate_json_schemas function (#382) (cf5a16d)
  • resample method for TimeSeriesBoolean (#349) (8feaf6c)
  • use discriminated union (d66fed3)
  • use EcalcError and provide context (975d3b1)
  • validation using yaml classes (#377) (66aada1)
  • yaml models schema (b5d3451)

Documentation

  • fix broken links (ab80399)
  • fixed the Error in Simple model example in eCalc Docs, variable name started from salt_water to sea_water in full eCalc YAML model (#369) (2961d2f)
  • remove subgraph markdown styling (3632fbd)
  • remove v2 expectations (#386) (0595fbd)
  • The new update of Drogon eCalc model with a single speed pump (#241) (a22ffe8)
  • update description of control mechanisms in a variable speed compressor chart (#291) (67c3476)
  • update info about time series (#352) (aff50d7)
  • update migration guide venting emitters (#337) (551e1e1)
  • Wrong_category_for_directly_driven_compressor_in_simple_model_example_in_eCalc_Docs (#368) (e01080b)

Miscellaneous Chores

Code Refactoring

  • allow str in resource stream (#371) (fe9f3f2)
  • remove inheritance of CompressorTrainResult (3ab8964)
  • remove need for id on components etc (#347) (f9e32ae)

Tests

8.9.0 (2024-01-11)

Bug Fixes

  • don't run pdoc on application module (abbb704)

Documentation

  • maximum pressure ratio per stage in docs (#338) (261749f)
  • remove docstring for number of compressors (#339) (be148ba)
  • update migration guide economics (#335) (c4b50d6)

Miscellaneous Chores

Code Refactoring

8.8.0 (2023-12-27)

⚠ BREAKING CHANGES

  • include direct emitter results in ltp export (#305)

Features

  • add emitter rate type to venting emitters (#312) (d6e16fa)

Bug Fixes

  • correct changelog for venting emitters (#324) (eff911e)
  • correct fallback to pydantic v1 (#332) (4f89e48)
  • include direct emitter results in ltp export (#305) (f6b6371)
  • remove interpolation method (#321) (d125552)
  • support mismatching timesteps in ltp delta profile (#319) (32f0289)

Documentation

  • remove costs mentioned in docs (#322) (ee03965)
  • remove reference to fuel price- and tax in drogon example (#323) (963d9ea)
  • update docs for v8.8 release (#334) (153f7c4)
  • update PR template with checkboxes for stuff we forget (09f52bd)

Miscellaneous Chores

Code Refactoring

  • move simple result to presentation (#318) (e90a6eb)
  • use time series collection yaml classes (#328) (c36f62b)

Tests

  • update tests with maximum rate (2cb09e2)

Continuous Integration

8.7.0 (2023-12-05)

Bug Fixes

  • bug in compressor with turbine models with multiple streams and only one date (#296) (8c2c786)
  • deep copy when aggregating model results (#311) (53c8df4)
  • do not merge model results (#304) (34cebc4)
  • error message when model/facility input does not exist (4437032)

Documentation

  • update documentation with info about direct emitters name change (#310) (990f3c2)

Miscellaneous Chores

Code Refactoring

  • change emission rate type to calendar day (#300) (f8e5052)
  • change name from direct to venting emitter (#303) (8d03822)
  • remove duplicated function (ba48dcd)

Continuous Integration

8.7.0

⚠ BREAKING CHANGES

  • Change name from DIRECT_EMITTERS to VENTING_EMITTERS in input Yaml-file (#303)

8.6.0 (2023-11-21)

⚠ BREAKING CHANGES

  • remove economy from ecalc (#282)
  • graph.components and graph.get_component renamed to nodes and get_node
  • add type to consumers in system
  • change name from DIRECT_EMITTERS to VENTING_EMITTERS in input Yaml-file (#303)

Features

Bug Fixes

  • ensure that start date in global time vector is consistent with the requested output frequency (#269) (e8ef9b9)
  • make iteration loops for simplified train consistent (#263) (b066c74)
  • wrong handling of values and timesteps in temporal models (#261) (4e20264)

Documentation

Miscellaneous Chores

  • add INVALID_INPUT and INVALID_MAX_RATE (d651ed6)
  • add test of get_max_standard_rate for single speed compressor train (d651ed6)
  • clean up common module (#277) (e1959ab)
  • extend tests of time series resampling (e8ef9b9)
  • improve algorithm to generate generic variable speed compressor charts from input points (#276) (b257567)
  • make sure no mismatch between timestamps and time series values (#251) (ae6ade9)
  • only calculate max standard rate for time steps with valid model input (#252) (d651ed6)
  • possibility to include start and end date in resampling (e8ef9b9)
  • update changelog for v8.6 release (#288) (af32274)
  • update dependencies for new v8.6 release (#289) (5a245a3)

Code Refactoring

  • add option to skip header validation on resource files (#260) (883b7e6)
  • calculate timesteps separately (#284) (bd9d684)
  • collect results in priority optimizer (16b9ccc)
  • common consumer system type (fe09263)
  • common yaml system v2 class (98198fc)
  • consistent naming of nodes in graph (676c7b8)
  • generic graph class (6f63e40)
  • move into presentation layer (#271) (52530e0)
  • remove economy from ecalc (#282) (a50148c)
  • rename Stream to StreamConditions (cf908ec)
  • rename to component graph (9629f22)
  • system v2 stream conditions format (#257) (e228e8b)
  • use common consumer system dto class (#267) (3c58b53)
  • use PriorityOptimizer outside ConsumerSystem (f1af9e6)

8.5.0 (2023-10-30)

Features

Bug Fixes

Documentation

  • add missing keywords surge control margin (#239) (8b97673)
  • update changelog for upcoming release v8.4 (#203) (66671e0)

Miscellaneous Chores

  • add init file to ecalc_cli (af6bee9)
  • add chart area flag to test of full recirculation (0c45251)
  • add check for zero efficiency in stage (3ea3035)
  • add dependabot actions monitoring (#219) (d5f5dfd)
  • add ModelInputFailureStatus (6b0c728)
  • add NO_FLOW ChartAreaFlag (0c45251)
  • add rate type to pump model result (#209) (21deeb7)
  • cli: add all energy usage models load_results test (#220) (e09febb)
  • deps: bump actions/cache from 3.0.11 to 3.3.2 (#223) (087867c)
  • deps: bump actions/checkout from 2 to 4 (#221) (bcc2f81)
  • deps: bump actions/setup-node from 3 to 4 (cb7e816)
  • deps: bump snok/install-poetry from 1.3.3 to 1.3.4 (#222) (80dab72)
  • fix tests (6b0c728)
  • handle requested pressures correct for compressors without system (#233) (445fc9d)
  • handle requested pressures for compressor systems (#215) (6b05439)
  • more robust surge control margin calculation (#229) (74b4e59)
  • move feature experimental to main method for requested pressures (#230) (00ad854)
  • pre-commit (a310df2)
  • show correct version (#211) (f8de992)
  • update dependencies (#212) (c9b8506)
  • update dependencies (#259) (e7f031f)
  • update python deps (#247) (514da16)
  • update system v2 tests to only use one crossover (#205) (aa65163)
  • update zero efficiency error message (#258) (5be6fe4)
  • upgrade packages (#255) (035aad1)
  • version must be updated in version.py (63eb672)
  • warn user about full recirculation of fluids in a compressor stage in a multiple streams and pressures compressor train (#196) (0c45251)

Code Refactoring

  • implement evaluate streams in models (#232) (df6b6b0)
  • libecalc.core: stream as input (#224) (e06f970)
  • move crossover to component_conditions for system v2 (#204) (018b472)
  • move RateType into common module (#253) (c7f5a99)
  • move validate operational conditions from compressor train, rename to validate model input (#256) (6b0c728)
  • remove regularity our of core/domain (#246) (714888b)
  • remove temporal operational settings system v2 (#244) (a1d2ce6)
  • rename streamCondition to stream (32885b5)
  • separate optimization from system (#245) (b580e3d)
  • use Graph object to build graph (#250) (ce65dba)

8.4.0 (2023-09-25)

Features

  • add compressor inlet- and outlet pressures to models/train level (#152) (9b95ee5)
  • add input compressor pressures to output (#140) (74e3e56)
  • add support for system v2 in FDE (e6d1f93)
  • add support for temporal operational settings in v2 (f2b217a)

Bug Fixes

  • add system v2 subcomponents to components list (b61a0fe)
  • add system v2 to generator set consumers (#166) (d40558e)
  • avoid name conflicts with ecalc cli package (#197) (140c448)
  • bug in asset_result_dto (#170) (c45a7ac)
  • correct type for total system rate in pump system v2 (#167) (5559cdd)
  • do not return actual rate in results for compressor sampled since it can not be calculated (#190) (74fcfd8)
  • expression type in system v2 (5318fb5)
  • forbid extra attributes in TimeSeries (#195) (24c27bb)
  • full run with system v2 components (#147) (2279ef4)
  • generate system v2 schema (#161) (a27c392)
  • handle all situations where zero mass rate is entering a compressor stage in a multiple streams compressor train (#164) (ba9235e)
  • handle dates in yaml correctly (e9c28d0)
  • issue with crossover rate calculation in system v2 (#188) (623a1cf)
  • make ecalc installable again (58693de)
  • rate_type was snake_case in json output (#172) (dc82a88)
  • requested pressures not always an attribute (#155) (0078405)
  • system v2 evaluation (6494257)
  • use results base (#199) (cebde33)
  • wrongly accessed rate in pump system v2 (56da4b2)

Documentation

  • add further explanation to generic workflow (ddcb462)
  • add generic workflow (30553e0)
  • add powerlossfactor in generic workflow (3d152c8)
  • changelog v8.4 add input compressor pressures to output (#150) (46e308f)
  • correct order of diagrams (71a07f5)
  • make mermaid diagram of workflow render correctly (b1c5b23)
  • make mermaid workflow diagram render correctly (7a99b5b)
  • update changelog for v8.3 (b424176)
  • update workflow with comments (a71abfe)

Miscellaneous Chores

  • add pressure drop ahead of stage to inlet pressure before choking (#146) (e5368de)
  • add rate type to compressor model results and convert to time series (#187) (c86bf3f)
  • add validation for missing headers in csv resource file (#191) (60e8403)
  • adding test of full recirculation in multiple streams compressor trains (ba9235e)
  • calculate correct standard condition density when mixing two streams (ba9235e)
  • clarify neqsim depenedency in ecalc (#198) (d6635a9)
  • docs: fix equations showing twice (#141) (2455e34)
  • enable mypy for cli (#189) (da713fc)
  • fix spelling errors in changelog (de3c2eb)
  • remove unnecessary folders (#186) (e861d87)
  • rename conflicting file names (#153) (654175e)
  • revert nan to num in expressions (#202) (2f95c29)
  • update archive (#181) (03abf64)
  • update deps to latest (0f30f49)

Code Refactoring

  • change typ to rate_type for TimeSeriesRate (#89) (8be87dd)
  • generate asset/ecalc model schema (#157) (6818848)
  • generate direct emitter schema (#180) (924526a)
  • generate facility type schema (#182) (9428979)
  • generate fuel consumer schema (#160) (9f580c1)
  • generate fuel types schema (#179) (e17ef3b)
  • generate generator set schema (#165) (ab25e05)
  • generate installation schema (#159) (030a44b)
  • generate time series schema (#176) (b02d68d)
  • improve error message when wrong CURVE-keyword input to single speed compressor (#173) (9502bcc)
  • improve error message when wrong CURVES-keyword input to variable speed compressor (#175) (714e867)
  • merge functionality for results (#193) (db1e9b1)
  • move common properties for system v2 operational settings (10b5e07)
  • move yaml system into package (b477b15)
  • remove condition and power_loss_factor from system v2 (2507bb9)
  • remove rate_fractions from system v2 (ba788fd)
  • use common Period,Periods classes (76366ce)
  • use common to_camel_case function (#171) (f5f0c2f)
  • use yaml prefix for yaml klasses/modules (#174) (e91ac2a)

8.3.0 (2023-08-11)

⚠ BREAKING CHANGES

  • energy model type not allowed to change over time (#131)

Features

Bug Fixes

  • avoid zero discharge pressure after validation of operational conditions (830c75e)
  • bug fix to joining results from different temporal models with compressor train models having multiple inlet or outlet streams (#63) (da3144a)
  • json schema accepts MAXIMUM_DISCHARGE_PRESSURE for single speed train (#86) (a18de1e)
  • json schema allow stages to have control_margin and control_margin_unit (#90) (2415534)
  • make apply_condition work for 2D numpy arrays also (#78) (bce91cb)
  • make sure that suction pressure is less than or equal to discharge pressure for compressor train (#104) (d218273)
  • parse scientific notation numbers in expression (#85) (fdf322b)
  • parse spaces as thousand separators from excel (#107) (5a3bd6a)
  • pump results wrong when resampled (#71) (daffdb3)
  • resample emissions correctly to create valid json (3c9b52e)
  • result of validation of operational conditions when rate is zero should always be valid (9de403c)
  • validate time steps where rate is different from zero, not only when larger than zero (6ce07c4)
  • wrong standard_conditions_density when mixing two fluids (a16a695)

Documentation

  • fix generic compressor example (38870a3)
  • fix links (#116) (62cadfc)
  • how to migrate from 8.1 to 8.2 (4d3be58)
  • remove unnecessary information from migration guide (4730538)
  • specify only gensets for boiler/heater (#53) (2df3bdf)
  • update changelog 8.2 with changes for ltp- and stp (#43) (6fe4b77)
  • update changelog for 8.2 (3ccea74)
  • update docs and changelog for energy models (#133) (8f0d716)
  • update documentation for heaters and boilers (#52) (2bef707)
  • update migration guide with ltp- and stp changes (#42) (4b0b230)

Miscellaneous Chores

  • add 8.3 changelog (9f4a4af)
  • add fluid mixing checks (53c1626)
  • add fluid mixing checks (0f3ddca)
  • add installation filter to flare nmvoc (#87) (f37b76d)
  • add installation filter to remaining ltp-columns (#91) (39df792)
  • add power adjustment constant also for compressor trains with interstage pressure (#136) (c8a4861)
  • add test for adjust energy usage on multiple streams and pressures compressor trains (c8a4861)
  • add test of count_parentheses (0d1ce6f)
  • add test of validation of operational conditions when suction pressure exceeds discharge pressure (d218273)
  • added changelog entry about interstage pressure fix (#95) (2a1e8b0)
  • count parentheses in list of tokens only among the elements that are strings (#94) (0d1ce6f)
  • energy model type not allowed to change over time (#131) (670cff2)
  • enforce unique fuel type names, and unique emission names within one fuel type (#84) (4ea9c63)
  • fix broken link in documentation of GENERATORSETS keyword (#103) (329c8e9)
  • fix typing of fluid composition (c0d98b3)
  • improve documentation on defining compressor charts using CURVE and CURVES (#97) (1bde68a)
  • improve error message when bad yaml file name (#77) (d2eb733)
  • merge queue (d4489c6)
  • numpy ndarray typing (#46) (9b7b308)
  • pin numpy to compatible numpy version (35a3640)
  • remove limiting dependency typer-cli (8208444)
  • simplify dependencies for use with komodo (39c5c36)
  • update dependencies to be aligned with external requirements (fbfbfeb)
  • update snapshots after power adjustment constant fix for compressor trains with interstage pressure (c8a4861)

Code Refactoring

  • consumer system v2 (248dabb)
  • ensure neqsim fluid is contained to FluidStream object (#118) (d1d6ad6)
  • enthalpy calculations (#109) (a01a215)
  • enthalpy calculations (#110) (cf7d1a9)
  • improve naming and documentation (94be7fa)
  • molar_mass_kg_per_mol is not used in the code (3ea535e)
  • move NeqSimfluid creation into NeqSim wrapper (57c4b24)
  • NeqSim mapping (#120) (0a0b2fe)
  • remove FluidStream copy (#119) (0e30ab2)
  • Use a list comprehension to create a transformed list (#112) (5d7292b)

Tests

  • add test for fluid stream mixing (0ba8f8f)

Continuous Integration

  • create release-please pr against correct branch (be9426a)
  • fix issue with api reference docs generation (#44) (42c1402)
  • fix syntax for gh action workflow (d8700dd)
  • Lock pydantic version in CI and update hooks (#106) (2ea517e)
  • remove duplicate build of docs (#62) (e5b896b)
  • set default ownership for source (16d54f1)
  • support hotfix releases (0346929)
  • update pre-commit settings (6092255)

8.2.2 (2023-05-28)

Bug Fixes

  • allow electrical driven consumers in consumer system v2 (92cb4fa)
  • cast float to numpy array in function call (#39) (250928c)
  • NeqSim Wrapper: inconsistent return type (9482421)
  • output emissions in fixed and predicted order (059dab5)

Continuous Integration

  • enable mypy for neqsim wrapper (871c038)
  • parallelize tests in docker (4e73b68)
  • remove docker tests (a2b5c1a)
  • use xdist to parallelize test suite (2895ae7)

Tests

  • compare consumer system v1 vs v2 both fuel and power consumers (74fafce)

Code Refactoring

  • even more typing! (a7b22e2)
  • fix more typing (08394a3)
  • make units lowercase in function names (272f0d7)
  • raise exceptions from error (ee6e474)
  • remove duplicate function for converting to standard rate (93de4f4)
  • remove unused code (7ccf2c1)
  • rename function variables (c56693a)
  • typing and typos (936b941)

Documentation

  • add docstrings to undocumented functions (064adfa)
  • update compressor pressure control (#14) (1da1999)

Miscellaneous Chores

  • add consumer function utils (50e2d66)
  • add consumer system v2 sub results (b78b035)
  • add testing of condition in consumer system consumer function (50e2d66)
  • capture return values from a decorated function (09ef23e), closes #4489
  • capture valid neqsim states (f9c8b09)
  • change to absolute image links in readme (#16) (9a54f51)
  • conditions in tabular consumer function (50e2d66)
  • correct link to documentation from README.md (f185a7f)
  • coverage from coverage.py is not directly supported (8e76c8a)
  • enable B904 (65ac18b)
  • evaluate consumer system v2 consumers according to input order (0088232)
  • fix badges (dd2fd6b)
  • migration guide changed resampling method (#38) (d4f11dc)
  • move conditioning for consumer system consumer function (50e2d66)
  • move conditions for compressor consumer function (50e2d66)
  • move conditions for direct consumer function (50e2d66)
  • move conditions in pump consumer function (50e2d66)
  • move evaluation of conditions before calculations (#24) (50e2d66)
  • remove energy usage before conditioning from tests (50e2d66)
  • remove energy_usage_before_conditioning from results (50e2d66)
  • set power to zero when rate (and fuel consumption) is zero (#27) (1ee5bfd)
  • typo (9c3af00)
  • typo (389db6f)
  • update dependencies to latest compatible (5809862)
  • update description etc in readme (f37dbb7)
  • update docstring for numeric_methods (be435c3)
  • update test snapshots (1ee5bfd)

8.2.1 (2023-05-09)

Miscellaneous Chores

Continuous Integration