Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add trimmed serendipity * Fix value shape for trimmed serendipity * ufl plumbing update for trimmed serendipity. * Plumbing for SminusDiv.py * Adding in element stuff for SminusCurl. * Add dual space function to mixed function space * Add Dual Space class and mixed tests * Change name of dual space function * Add basic implementation of isprimal/dual * update dual tests * Corrections in functionspace and duals * Initial implementation of Cofunction * Initial Implementation of cofunction * lint * Export new classes * Add test for equality of cofunctions * Improved implementation of isdual/isprimal * rename duals test file * Comments * Add new method to coefficient * Add new to argument and tests * Lint * Update to fit docstyle * add newarguments so that pickle works * Add Matrix Class * Changes to Matrix Class * Add Matrix to init * Add BaseForm * Add form sum to init file * change inheritance structure and add baseform * Add baseform to matrix * Add some operation tests * Add comment about FormArgument * Fix signature tests * Tidy and add assertions to tests * Starting to implement matrix adjoint * Change approach of Adjoint Implementation * Remove unnecessary functions from BaseForm * Change implementation of new to fix tests * Update adjoint * Initial Action implementation and tests * Lint * Check Action arguments * Add alternative Action to formoperators * lint * Rework action * lint * Add errors to action + test public api * Modify compute_energy_norm to alternative def * Add hashing to baseform instances * Add some comments and lint * Hash in matrix * Add test for action on action * remove eq in form as redundant * lint + amend tests * Fix Issue with adjoint * small change to arguments method of adjoint class * lint * lint * more style * cleanup Action * cleanup Action * cleanup adjoint * use correct action * sanitise argument creation * Shut up Flake8 W503 is no longer PEP8 best practice. E129 causes spurious problems on long `if` statements. * clean up Matrix * Clean up duals * Clean up functionspace * Remove unneeded signature from Matrix * cleanup form * Check trivial case for Action and Adjoint * Update possible right term for Action * Take into account various BaseForm objects in expand_derivatives * Add BaseForm in __init__ * Add BaseForm in as_ufl * Update action * Update Cofunction and Coargument for when they take in a primal space * Add equals to FormSum * Add __eq__ to Action * Add __eq__ to Adjoint * Add __eq__ and __hash__ to Coargument * Fix typos * Refactor analysis.py * Add BaseFormDerivative * Fix for arguments, coefficients and function spaces * Fix hash for coefficients, arguments and function spaces + some more equality fixes * Draft BaseForm diff * Draft: Refactor UFL types using UFLType * Fix __eq__ for Coargument * Add UFLType handler as the default handler + Move UFLType to ufl_type.py * Add ufl_operands and _ufl_compute_hash to BaseForm objects for MultiFunction traversal * Add Matrix/Cofunction/Coargument differentiation + Add some ufl_type handlers * Push arguments analysis through BaseFormDerivative * Add Action differentiation * Add tests for BaseForm differentiation * Add Adjoint(Adjoint(.)) = Id * Fix Action differentiation * Matrix derivative is always 0 (since we can't differentiate wrt a Matrix) * Update _handle_derivative_arguments * Fix _analyze_form_arguments for FormSum * Update FormSum and tests * Fix ExprList * Add Adjoint differentiation * Add handlers for Action/Adjoint/FormSum in map_integrands * Use pytest.raises * Change __eq__ to equals for dual objects * Update traversal.py * Replace expr handler by ufl_type in Replacer * Refactor UFL type system * Address comments from the PR * Update arguments analysis for FormSum * Fix lint * Extend Action distribution over ufl.Sum * Add test for Action distributivity wrt FormSum and Sum * Enable Matrix on the rhs of Action * Add ZeroBaseForm * Add tests for ZeroBaseForm * Update author info * Fix Cofunction's argument * Update expand_derivatives * Clean way of getting action arguments and check function spaces * Rename _get_action_arguments * Fix ZeroBaseForm simplification for BaseForm * Swap ZeroBaseForm's arguments for adjoint * Check arguments when summing a ZeroBaseForm * Fix argument contraction with CoefficientDerivative * Clean up * Fix __str__ for Action/Adjoint * Add/Fix comments * Fix typo * Update warnings * Clean up docstrings + fix flake8 Co-authored-by: Rob Kirby <[email protected]> Co-authored-by: Justincrum <[email protected]> Co-authored-by: India Marsden <[email protected]> Co-authored-by: David Ham <[email protected]> Co-authored-by: nbouziani <[email protected]> Co-authored-by: nbouziani <[email protected]>
- Loading branch information