Andes

Latest version: v1.9.2

Safety actively analyzes 682361 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

1.6.2

Interoperability:

- Added interoperability modules for MATPOWER (through Oct2Py), pandapower (jinningwang ) and
pypowsybl.
- Added Examples and API reference for the interoperability module.
- Improved the setup script to support extra dependencies. The following extras
groups are supported: ``dev`` and ``interop``. See :ref:`Install_extras` for
more information.
- Added tests for power flow calculation against MATPOWER.

Others:

- Added a shorthand command `andes.system.example()` to return a disposable
system. It can be useful for quick prototyping.
- Improved the formatting and navigation of Model references.
- Models store the base values for per-unit conversion in `Model.bases`.

1.5.9

This is a minor release mostly bug fixes.

- Renamed ``REGCVSG`` to ``REGCV1`` and ``REGCVSG2`` to ``REGCV2``.
- Added an alias list for model names. See ``models/__init__.py``.
- Added PLL1, a simple PLL model.
- Multiprocessing now executes on all CPUs that are physical, instead
of logical. A new package ``psutil`` needs to be installed.
- Use of ``Selector`` is deprecated.

If you installed ANDES in the development mode, you might need to install `psutil` manually.

1.5.2

As always, if ANDES was updated using `git pull`, please run `python -m pip install -e .` in the ANDES source code repository to ensure dependencies are up to date.

- Removed ``CVXOPT`` dependency.
- Removed ``__zeros`` and ``__ones`` as they are no longer needed.

- Added ``andes prep -c`` to precompile the generated code.
- Added utility functions for saving and loading system snapshots.
See ``andes/utils/snapshot.py``.

- Compiled numba code is always cached.
- Bug fixes.

1.5.0

ANDES 1.5.0 boasts performance improvement as much as 30%.
All generated numerical code can be compiled just-in-time using numba.

Details are as follows:

- Support numba just-in-time compilation of all equation and Jacobian calls.

This option accelerates simulations by up to 30%. The acceleration is visible in medium-scale systems with multiple models.
Such systems involve heavy function calls but rather a moderate load for linear equation solvers.
The speed up is less significant in large-scale systems where solving equations is the major time consumer.

Numba is required and can be installed with ``pip install numba`` or
``conda install numba``.

To turn on numba for ANDES, in the ANDES configuration under ``[System]``,
set ``numba = 1`` and ``numba_cache = 1``.

The just-in-time compilation will compile the code upon the first execution based on the input types.
When the compilation is triggered, ANDES may appear frozen due to the compilation lag.
The option ``numba_cache = 1`` will cache compiled machine code, so that
the compilation lag only occurs once until the next ``andes prep``.

Thanks to the maintainers and contributors of SymPy for the hotfixes for the generated code of `Piecewise`.
asmeurer ThePauliPrinciple and oscarbenjamin.

- Allow ``BackRef`` to populate to models through ``Group``.

When model `A` stores an ``IdxParam`` pointing to a group, if ``BackRef``
with the name `A` are declared in both the group and the model,
both ``BackRef`` will retrieve the backward references from model `A`.

- Allow ``BaseVar`` to accept partial initializations.

If ``BaseVar.v_str_add = True``, the value of `v_str` will be added in place
to variable value.
An example is that the voltage compensator sets part of the input voltage, and
the exciter reads the bus voltage. Exciter has `v.v_str_add = True` so that
when compensators exist, the input voltage will be bus voltage (vbus) plus
(Eterm - vbus).
If no compensator exists, the exciter will use bus voltages and function as expected.

- Added reserved variable names ``__ones`` and ``__zeros`` for ones and
zeros with a length equal to the device number.

``__ones`` and ``__zeros`` are useful for vectorizing ``choicelist``
in ``Piecewise`` functions.

1.4.4

This is a stable version of ANDES 1.4. Notable improvements include:

- code generation `andes prep` is now about *4 times faster* on a multi-core machine (thanks to multiprocessing)
- V- and f-based protection models for distributed energy resources (developed by Jinning Wang jinningwang, thanks to the support from Dr. Xin Fang with NREL xfangnrel)
- overhaul of the eigenvalue analysis routine

Note that `dill` support is deprecated and will be removed in v1.5. If you do not recall using `calls.pkl` at all, you will not be affected.

1.3.0

- Allow `State` variable set `check_init=False` to skip
initialization test. One use case is for integrators
with non-zero inputs (such as state-of-charge integration).
- Solves power flow for systems with multiple areas, each with
one Slack generator.
- Added `Jumper` for connecting two buses with zero impedance.
- `REGCA1` and synchronous generators can take power ratio
parameters `gammap` and `gammaq`.
- New models: `IEESGO` and `IEEET1`, `EXAC4`.
- Refactored exciters, turbine governors, and renewable models
into modules.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.