15 Commits

Author SHA1 Message Date
Dominique Lasserre
6e52c9bef2
Mypy (#217)
* Mypy: Initial support

 * Add to pre-commit (currently installs own deps, could maybe changed
   to poetry venv in the future to reuse environment and don't need
   duplicated types deps).
 * Add type hints.

* Mypy: Add missing annotations
2024-11-26 22:28:05 +01:00
Jürgen Eckel
595b73359c
renamed haushaltsgeräte to home appliance (#196)
* * rename Haushaltsgeraete to home appliance
* renamed strafe to penalty (optimization problem)

Signed-off-by: Jürgen Eckel <juergen.eckel@gmail.com>

* removed penalty renaming

Signed-off-by: Jürgen Eckel <juergen.eckel@gmail.com>

* renamed one variable

Signed-off-by: Jürgen Eckel <juergen.eckel@gmail.com>

* * renamed variable names and methods of the home appliance class

* renamed missed method names

* fixed renamed variable

* renamed object

* adjusted to latest repo changes

* renamed file to class_home_applianc.py

* renamed method

---------

Signed-off-by: Jürgen Eckel <juergen.eckel@gmail.com>
Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>
2024-11-26 00:53:16 +01:00
Michael Osthege
5e2eae7331
Structure code in logically separated submodules (#188) 2024-11-19 21:47:43 +01:00
Dominique Lasserre
2f5f844018
Migrate from Flask to FastAPI (#163)
* Migrate from Flask to FastAPI

 * FastAPI migration:
    - Use pydantic model classes as input parameters to the
      data/calculation classes.
    - Interface field names changed to constructor parameter names (for
      simplicity only during transition, should be updated in a followup
      PR).
    - Add basic interface requirements (e.g. some values > 0, etc.).
 * Update tests for new data format.
 * Python requirement down to 3.9 (TypeGuard no longer needed)
 * Makefile: Add helpful targets (e.g. development server with reload)

* Move API doc from README to pydantic model classes (swagger)

 * Link to swagger.io with own openapi.yml.
 * Commit openapi.json and check with pytest for changes so the
   documentation is always up-to-date.

* Streamline docker

* FastAPI: Run startup action on dev server

 * Fix config for /strompreis, endpoint still broken however.

* test_openapi: Compare against docs/.../openapi.json

* Move fastapi to server/ submodule

 * See #187 for new repository structure.
2024-11-15 22:27:25 +01:00
Chris
057f86d580
Json configuration (#141)
* Add json config
* Adjust code to new config

---------

Co-authored-by: Chris <git@nootch.de>
2024-11-11 21:38:13 +01:00
Andreas
6848babef1 PreCommit Fixed 2024-10-22 10:39:10 +02:00
Andreas
e455e9a18a class_ems: AC / DC Charging
class_optimize: Timing Bugs fixed
class_numpy_encoder: JSON Encoder with Numpy support
visualize: AC / DC / Discharge
test_class_ems_2: New Test for AC / DC charging decision
2024-10-22 10:39:10 +02:00
Andreas
2807ec7978 EV possible currents -> Work now (new Mutate Function)
-> Some Penalties are removed (deprecated)
AC Charge -> Parameter in Optimization -1,0,1
-> Missing integration in class_ems
2024-10-22 10:39:10 +02:00
Andreas
565e721d68 [BUG]: class_ems nd_array not JSON serializable
Big Bugfix - not sure if everything works
2024-10-09 16:59:50 +02:00
Andreas
b7dbd7e475 min_soc (was killed by someone else, pls dont force push!) 2024-10-06 16:00:07 +02:00
Normann
40341d9aef fixed_seed for single_test_optimization
sets the seed for random to a fixed value to be able to compare results.
Value chosen for obvious reason. Same value is used in the test case.
2024-10-06 15:20:37 +02:00
Andreas
b8d07db483 Pre Commit 2024-10-06 14:35:11 +02:00
Andreas
cc270e71bc - Home Appliances fixed
- Unittest with Home Appliances
2024-10-06 14:35:11 +02:00
Andreas
6ab8a67773 Pre Commit Fixes 2024-10-05 09:22:10 +02:00
Andreas
b49321ddb4 deleted dead File server_load_profile.py now in flask_server
test.py -> single_test_optimization.py
2024-10-05 09:22:10 +02:00