Skip to content

Releases: milanofthe/pathsim

v0.5.0

20 Dec 08:24
Compare
Choose a tag to compare

Minor fixes, primarily the Duplex connection now works properly.

v0.4.9

11 Dec 09:03
Compare
Choose a tag to compare

This release adds the capability to solve for the time independent Steady State

  • adds special SteadyState subclass of ImplicitSolver, utilizing the existing optimizers
  • bidirectional connnections called Duplex that couple two IO pairs as a subclass of Connection, useful for RF systems with ports

v0.4.8

01 Dec 10:17
Compare
Choose a tag to compare

This release mostly handles a better integration of the AD framework into the solver suite.

  • reworked event handling system to act on blocks directly for monitoring and resoution, makes it more versatile
  • simulation initialization now utilizes the add_xx methods and is therefore more streamlined
  • introduced optim module that houses the AD framework and the solvers for the implicit update equation s for implicit solvers
  • the AD framework now has functions for jacobian evaluation and a decorator to compute jacobians automatically
  • extended the implicit update equation solver suite by newton-type methods that leverage the AD framework to get the jacobians (experimental and not used currently)
  • implicit integrators now support the Value class from the AD framework, this makes stiff systems fully differentiable

v0.4.7

24 Nov 13:35
Compare
Choose a tag to compare
  • Event handling system with zero-crossing detection and handling of scheduled events with error control, compatible with all integrators
  • 25% faster AD by using integer indexing for gradient references in Value class
  • blocks, connections and events are the three major system components that are managed by the Simulation class now
  • blocks, connections and events have on and off methods that enable activating and deactivating them (dynamically, based on events or for debugging purposes) in the simulation

v0.4.6

15 Nov 15:35
Compare
Choose a tag to compare
  • reworked error controllers for the adaptive timestep integrators
  • added GEAR type integrators to the solver library (multistep methods with adaptive timestep and adaptive order selection)

v0.4.5

10 Nov 09:33
Compare
Choose a tag to compare
  • fixed path length estimation for nested subsystems and added tests and an example
  • renamed utils.funcs to utils.utils, which makes more sense

v0.4.4

05 Nov 18:17
Compare
Choose a tag to compare
  • minor fixes
  • fixed RKDP54 butcher table
  • test coverage for Value and Parameter classes for AD framework

v0.4.3

01 Nov 14:31
Compare
Choose a tag to compare
  • refactoring of numerical integrators (solvers), separate parent classes for diagonally implicit and explicit runge kutta methods simplifies the specific methods significantly
  • performance of runge kutta methods improved >10% by using explicit loops with indexing to construct slope instead of sum comprehension

Enhanced AD and Fixes

26 Oct 14:08
Compare
Choose a tag to compare
  • created interface for automatic differentiation framework to numpy ufuncs
  • updated testsuite
  • general bugfixing regarding implicit solvers (jacobian computation)

AD

23 Oct 13:47
Compare
Choose a tag to compare
AD

Lots of refactors, improvements and new features since the last release including:

  • Added rudimentary automatic differentiation (AD) framework in pathsim.diff to make the simulations differentiable w.r.t. predefined parameters
  • Refactoring of numerical integrators to be compatible with AD framework for transient simulation
  • Added lots of test, initial coverage was above 85%, more coming in the future
  • Overall cleanup