Releases: MPh-py/MPh
Releases · MPh-py/MPh
1.1.1
1.1.0
- Published on October 21, 2021.
- Client instances may now re-
connect()
to a different server. (#41) Server
instances can be started with themulti
option.- Module licenses can be queried with
Client.modules()
andModel.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
- 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
- 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 whenformat
given, but notpath
. - Fixes:
Model.save()
withoutpath
given did not save new models. - Fixes:
Model.parameters(evaluate=True)
returned strings, not numbers. - Fixes off-by-one error when passing
inner
indices toModel.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
- 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()
andcreate()
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
1.0.0
- 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 onNode
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()
andModel.toggle()
have been deprecated.- Use the
Node
class instead to access that functionality. Model.import_()
was introduced to supersedeModel.load()
.- Arguments
unit
anddescription
toModel.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
- 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
- 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.