Skip to content

Releases: MPh-py/MPh

1.1.1

02 Dec 16:16
Compare
Choose a tag to compare
  • Published on December 2, 2021.
  • Supports custom Comsol install locations on Linux via symbolic links in ~/.local. (#62)

1.1.0

20 Oct 23:29
Compare
Choose a tag to compare
  • Published on October 21, 2021.
  • Client instances may now re-connect() to a different server. (#41)
  • Server instances can be started with the multi option.
  • Module licenses can be queried with Client.modules() and Model.modules().
  • Node selections can be set and queried with .select() and .selection().
  • Warnings and errors are reported by Node.problems().
  • User comments on model nodes can be accessed with Node.comment().
  • The import_() method is now also available on nodes.
  • No longer logs warning when mph.start() returns existing client instance.
  • Fixes: Java DLL not found if another program is first on the Windows search path. (#49)
  • Fixes: Certain preferences not defined on older Comsol installations. (#50)
  • Added documentation note regarding issue with export of animations. (#43)
  • Improved API documentation. Cross-referenced Comsol API docs.
  • Added new logo. (Not subject to the source code's MIT license.)

1.0.4

23 May 15:01
Compare
Choose a tag to compare
  • Published on May 23, 2021.
  • Added missing support for installations with classkit license. (#40)
  • Added name validation of available configuration options. (#40)
  • Added support for persistent configuration storage to mph.config.
  • Fixed: No preference checkforrecoveries on certain installations. (#39)
  • Fixed: Unclear error message when requested version is not installed. (#42)

1.0.3

05 May 19:20
Compare
Choose a tag to compare
  • Published on May 5, 2021.
  • Fixes: Client.remove() did not accept model by name.
  • Fixes: Node names were not escaped when creating new features.
  • Fixes: Model.save() failed when format given, but not path.
  • Fixes: Model.save() without path given did not save new models.
  • Fixes: Model.parameters(evaluate=True) returned strings, not numbers.
  • Fixes off-by-one error when passing inner indices to Model.evaluate().
  • Comsol expects 1-based indices, as opposed to Python's 0-based indexing.
  • Adds missing built-in group 'couplings'.
  • mph.start() now returns existing client instance on subsequent calls.

1.0.2

28 Apr 23:05
Compare
Choose a tag to compare
  • Published on April 28, 2021.
  • Assigns more typical tag names when creating new model features.
  • In most cases, tags are now named like they are in the Comsol GUI.
  • Node.retag() allows post-hoc modification of a node's tag.
  • Adds missing built-in groups, e.g. evaluations and tables.
  • Improves performance of node navigation in client–server mode.
  • The internal type-casting converts Node instances to their tags.
  • The internal type-casting handles lists of numbers.
  • Before, property() and create() would only accept lists of strings.
  • Node.type() now returns nothing if node has no feature type.
  • Moved tutorial model to demos folder.
  • Added demo script create_capacitor.py that generates the tutorial model.

1.0.1

23 Apr 13:19
Compare
Choose a tag to compare
  • Published on April 23, 2021.
  • Fixes failing evaluation when name of default dataset contains slash.
  • Fixes failing evaluation of complex-valued expressions.
  • Fixes issue with complex numbers in parameter assignments. (#36)

1.0.0

13 Apr 22:02
Compare
Choose a tag to compare
  • Published on April 13, 2021.
  • We now offer you the best API Comsol has ever seen! 🎉
  • See "Creating models: Python style" for a feature demonstration.
  • A new Node class allows easy navigation of the model tree.
  • The Model class relies internally on Node for most functionality.
  • Feature nodes can be created with Model.create().
  • Node properties can be read and written via Model.property().
  • Feature nodes can be removed with Model.remove().
  • The Node class has additional functionality for modifying the model.
  • All feature nodes can now be toggled, not just physics features.
  • Model.features() and Model.toggle() have been deprecated.
  • Use the Node class instead to access that functionality.
  • Model.import_() was introduced to supersede Model.load().
  • Arguments unit and description to Model.parameter() are deprecated.
  • Parameter descriptions should now be accessed via Model.description().
  • Model.parameters() now returns a dictionary instead of named tuples.
  • This is a breaking change, but in line with other parts of the API.
  • mph.start() now picks a random free server port in client-server mode.
  • This avoids collisions when starting multiple processes on Linux and macOS.
  • Models may be saved as Java, Matlab, or VBA source files.
  • mph.tree() helps developers inspect the model tree in the console.
  • Known issue: Navigating the model tree is slow in client–server mode.
  • It is much faster in stand-alone mode, the default on Windows.
  • Made folder search case-insensitive on Linux/macOS, as requested in #31.
  • Documentation builds now use the MyST parser and the Furo theme.

0.9.1

24 Mar 20:47
Compare
Choose a tag to compare
  • Published on March 24, 2021.
  • Added documentation chapter "Demonstrations".
  • Added demo script that runs parallel Comsol sessions.
  • Amended mph.start() to allow hand-selecting the server port.
  • This makes the demo script work reliably on Linux and macOS.
  • Improved error handling at server start-up.
  • Relaxed log levels during discovery of Comsol installations.
  • This suppresses possibly confusing log messages as described in #28.

0.9.0

10 Mar 19:42
Compare
Choose a tag to compare
  • Published on March 10, 2021.
  • mph.start() is now the preferred way to start a local Comsol session.
  • On Windows, it starts a lightweight, stand-alone client.
  • On Linux and macOS, it starts a thin client and local server.
  • This is due to limitations on these platforms described in issue #8.
  • Configuration options are exposed by mph.option().
  • An in-memory cache for previously loaded model files may be activated.
  • Selection names are returned by model.selections().
  • Feature names in physics interfaces are returned by model.features().
  • Feature nodes in physics interfaces can be toggled on or off.
  • Parameter descriptions can be modified.
  • Parameter values may be returned as evaluated numbers instead of string expressions.
  • Custom classes derived from Model can now be more easily type-cast to.
  • Users are warned if log-in details for the Comsol server have not been set up.
  • Fixes issue #23 regarding discovery with older Python versions on Windows.
  • Fixes issue #24 regarding localized server output messages.

0.8.2

10 Mar 19:34
Compare
Choose a tag to compare
  • Published on February 13, 2021.
  • Works around issue of incorrect exit behavior.
  • Fixes: Exit code was always 0, even when terminating with sys.exit(2).
  • Fixes: Exit code was 0, not 1, when exiting due to unhandled exception.