#9650: Adding support for differential forms
-----------------------------------+----------------------------------------
Reporter: jvkersch | Owner: burcin
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.5.3
Component: symbolics | Keywords: forms, functions, symbolics
Author: Joris Vankerschaver | Upstream: N/A
Reviewer: Niles Johnson | Merged:
Work_issues: diff() |
-----------------------------------+----------------------------------------
Comment(by jvkersch):
Hi Marshall and Niles,
Thanks for testing the patch. I never would have expected this behavior,
so I'm glad it comes out now, thanks!! I followed Niles' suggestion and
added a `derivative` member function which calls `diff`. If any
additional arguments are specified, it throws an exception since I want to
avoid situations like these where one tries to take the derivative of a
form with respect to a coordinate. This isn't an intrinsic (coordinate-
independent) notion, so it would be better to enforce that in the code as
well.
More generally, Marshall's issue uncovers something strange having to do
with coercion into the symbolic ring:
{{{
sage: x, y = var('x, y')
sage: U = CoordinatePatch((x, y))
sage: F = DifferentialForms(U)
sage: q = DifferentialForm(F, 2)
sage: q[0, 1] = sin(x*y); q
sin(x*y)*dx/\dy
sage: SR(q)
sin(x*y)*dx/\dy
sage: q.parent()
Algebra of differential forms in the variables x, y
sage: SR(q).parent()
Symbolic Ring
}}}
I.e, if I coerce `q` into the symbolic ring, it still looks like a
differential form but its parent is `SR` and the behavior is completely
wrong (wedge and diff members give the wrong results). Shouldn't this
kind of coercion raise an error, since this could never be the intended
behavior?
Let me know what you guys think -- for now I'll leave this as needs_work.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9650#comment:29>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.