Releases: pyccel/sympde
Releases · pyccel/sympde
v0.10.0: Add logical operators (#71)
Implementation of logical operators: - Add 1d, 2d, 3d logical operators - Add Piola transformations - Allow application of `LogicalExpr` on vectorized operators like `grad, div, curl, dot, ...` - Add `MatrixSymbolicExpr` class and Symbolic jacobian Matrix - Update `TerminalExpr` to handle physical and logical coordinates - Add mappig attribute to Domain class which is set to None if it's a logical domain - `Domain.coordinates` can have two sets of coordinates `x1, x2, x3` if it's a logical domain or `x, y, z` if it's a physical domain Moreover: - Sort `Union` args by their string representation (fixes recurring failure in unit test) - Update .travis.yml (don't use "sudo", also test on Python-3.8; always use Linux Xenial 16.04) - Update version.py Co-authored-by: Yaman Güçlü <yaman.guclu@gmail.com>
v0.9.10
v0.9.9: Devel ddm (#67)
* Don't split the subdomains integral when calling terminalexpr * Improve printing of domains and boundary * Add NCubeInterior * Calculate dtype and dim of domain * Allow splitting over domains for the Norm * Delete function _split_expr_over_subdomains * Add assert statements in topology tests * Don't override dim property in Interval * Update version.py
v0.9.8
v0.9.7
v0.9.6: Devel bounds (#60)
* refactor: Use 'args' property instead of '_args' attribute. As described in Sympy's User Guide, one should never use internal methods of variables, prefixed with '_' (as an example, it is explicitly written that one should not use '_args', but use 'args' instead). Here we apply this rule to the two main modules in the 'topology' directory: 'basic' and 'domain'. * refactor: Improve Boundary class * refactor: Remove obsolete module * feat: Add coord bounds to Line/Square/Cube domains Several changes in 'domain' module: * It is now possible to instantiate objects of type Line, Square and Cube (these classes were only used as Domain constructors before); * Line, Square and Cube are subclasses of the generic NCube class, they have different constructor signatures, and use NCube's constructor to instantiate an object of their type with minimal code duplication; * NCube is a subclass of Domain; its constructor returns a Line object for dim=1, a Square for dim=2, a Cube for dim=3, and a generic NCube for dim>=4; * Line, Square, Cube, and NCube allow the user to prescribe the coordinate bounds, which are (0, 1) by default. Moreover, unit tests for the new features are provided. * chore: Do not use latest version of Sympy (1.5) * refactor: Avoid Codacy errors