Changes between Version 53 and Version 70 of Ticket #28519
 Timestamp:
 10/06/19 09:37:16 (19 months ago)
Legend:
 Unmodified
 Added
 Removed
 Modified

Ticket #28519

Property
Status
changed from
needs_review
toneeds_work

Property
Summary
changed from
Differential and Mixed Forms Improvements
toMetaticket  Tensor Fields, Scalar Fields and Mixed Forms

Property
Dependencies
changed from
to
#28554

Property
Commit
changed from
d16dbd94dfaaa2c07182ac5032d6cd81f50da3b9
toc95acea6b60d6d60d4956b912e61d6189b6f9a18
 Property Keywords tensor fields scalar fields added

Property
Reviewers
changed from
Eric Gourgoulhon, Travis Scrimshaw
to

Property
Status
changed from

Ticket #28519 – Description
v53 v70 1 **Mixed Forms** 1 There are too many changes going on at once, so that a merge in the end might be difficult. In order to avoid such difficulties and to keep an overview of things that are happening (for me and others), I use this ticket from now on as a metaticket, where all latest changes are merged together. Cross ticket references are possible. 2 2 3  readability of code improved in `mixed_form.py` and `mixed_form_algebra.py` 4  now, mixed form components are seen as immutable in the sense of the discussion below; as a result, the component setup is modified 5  now, the `display()` method shows **only** the expansion in a particular frame and chart 3 This metaticket is mainly devoted to the topic of immutability of algebra elements (see discussion below). 6 4 7 ** Scalar Fields**5 **Things going on:** 8 6 9  ~~scalar field can be partially defined in one top chart domain, so the display method was misleading in this case. This is now fixed: the `display()` method shows ''all'' known expressions. For each such expression, the greatest domain, where this expression is known, is displayed~~ (moved to #28554). 10  ~~now, multiplication of named scalar fields `f` and `g` leads to `f \cdot g` in LaTeX code~~ (moved to #28554) 11  ~~division by zero in `_div_()` is now checked via `is_trivial_zero()`~~ (moved to #28554) 12 13 ** Differential Forms / Tensor Fields** 14 15  tensor algebra computations improved: 16  in order to make computations faster, an attribute `_is_zero` is added and checked (similar to scalar fields) 17  wedge product of differential forms with self leads to zero right away in case of odd order 18  multiplication of tensor fields `a` with scalar fields `f` yields name `f*a` and latex name `f \cdot a` 19 20 **Various** 21 22  more consistency between scalar fields and tensor fields: 23  a copy of scalar fields took the name from the original, a copy of tensor fields did not; now, a copy takes the name in any case (in moment of creation, the copy is the very same algebraic object) 24  ~~method `set_restriction()` added to scalar fields~~ (moved to #28554) 25  ~~coercion via restriction rearranged in scalar fields following tensor fields~~ (moved to #28554) 26  minor code rearrangements, i.e. for code reuse or consistency 27  `copy()` now inherits the attribute `_is_zero` from the original (both for tensor fields and scalar fields) to ensure better zero treatment 28  manipulation of the zero element raises an error 7  #28554: Scalar Field Restrictions 8  Better Zero Treatment 9  Consistent Naming for Tensor and Scalar Fields 10  Mixed Forms as Immutable Elements