Published on February 21, 2022.
Adds support for export of animations. (#43)
Catches spurious exceptions when reading properties in
Published on October 21, 2021.
Client instances may now re-
connect()to a different server. (#41)
Serverinstances can be started with the
Module licenses can be queried with
Node selections can be set and queried with
Warnings and errors are reported by
User comments on model nodes can be accessed with
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.)
Published on May 23, 2021.
Adds missing support for installations with classkit license. (#40)
Adds name validation of available configuration options. (#40)
Adds support for persistent configuration storage to
Fixes: No preference
checkforrecoverieson certain installations. (#39)
Fixes: Unclear error message when requested version is not installed. (#42)
Published on May 5, 2021.
Client.remove()did not accept model by name.
Fixes: Node names were not escaped when creating new features.
formatgiven, but not
pathgiven did not save new models.
Model.parameters(evaluate=True)returned strings, not numbers.
Fixes off-by-one error when passing
Comsol expects 1-based indices, as opposed to Python’s 0-based indexing.
Adds missing built-in group
mph.start()now returns existing client instance on subsequent calls.
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
Nodeinstances to their tags.
The internal type-casting handles lists of numbers.
create()would only accept lists of strings.
Node.type()now returns nothing if node has no feature type.
Moved tutorial model to
Added demo script
create_capacitor.pythat generates the tutorial model.
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.
Nodeclass allows easy navigation of the model tree.
Modelclass relies internally on
Nodefor most functionality.
Feature nodes can be created with
Node properties can be read and written via
Feature nodes can be removed with
Nodeclass has additional functionality for modifying the model.
All feature nodes can now be toggled, not just physics features.
Model.toggle()have been deprecated.
Nodeclass instead to access that functionality.
Model.import_()was introduced to supersede
Parameter descriptions should now be accessed via
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.
Published on March 24, 2021.
Added documentation chapter “Demonstrations”.
Added demo script that runs parallel Comsol sessions.
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.
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
An in-memory cache for previously loaded model files may be activated.
Selection names are returned by
Feature names in physics interfaces are returned by
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
Modelcan 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.
Published on February 9, 2021.
Applies fixes for macOS from pull request #11.
macOS support has now actually been tested according to issue #13.
Published on February 7, 2020.
Adds support for Linux and macOS.
Caveats apply. See documentation chapter “Limitations” as well as issues #8 and #9.
Refactored discovery mechanism for Comsol installations.
Published on November 29, 2020.
Unpins JPype and Python version.
Works around issue #1 by brute-forcing shutdown of Java VM.
Clientinstances now report the Comsol version actually used.
Updates the documentation regarding limitations.
Resolves issue #4 regarding compatibility with 32-bit Python.
Possibly resolves issue #5 regarding spaces in path names.
Published on July 30, 2020.
First release used extensively “in production”.
Last release based on JPype 0.7.5.
Performs a regular shutdown of the Java VM, as opposed to releases to follow.
Respects user-set Comsol preferences when starting
Adds screen-shot of Comsol demonstration model to Tutorial.
Published on July 17, 2020.
Pins JPype dependency to version 0.7.5.
Works around shutdown delays of the Java VM, see issue #1.
Requires Python version to be 3.8.3 or below.
Minor improvements to wording of documentation.
Published on June 15, 2020.
Suppresses console pop-up during client initialization.
Ignores empty units in parameter assignments.
Published on May 18, 2020.
Minor tweaks to project’s meta information.
Published on May 17, 2020… later that day.
Fixes meta information on PyPI.
Published on May 17, 2020.
First open-source release published on PyPI.