#10132: Differential Geometry via Sage
------------------------------------+---------------------------------------
Reporter: mikarm | Owner: mhampton
Type: enhancement | Status: new
Priority: major | Milestone:
Component: geometry | Keywords: differential geometry,
parametrized surface
Author: Mikhail Malakhaltsev | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
------------------------------------+---------------------------------------
Comment(by jvkersch):
I've been a little busy over the last few days, but I made some changes to
the patch which I wanted to show you. The new patch is attached to this
comment.
The most significant is that I think that the member functions such as
`natural_frame`, `first_fundamental_form_coefficients`,
`second_order_natural_frame`, etc. should always just return a
dictionary/list with all of the components. The current situation is that
these functions take an optional argument, and when that argument is
specified only that component is returned.
1. By returning a dictionary/list we avoid having to check whether the
index is in the appropriate range.
1. We also avoid code duplication (now there is often the same code, once
to compute all the coefficients at once and once to compute individual
components);
1. It is slightly counter intuitive to have a function (say)
`natural_frame` return a vector rather than a basis. If the user is only
interested in one component, they can still write
{{{
sage: surface = ParametrizedCurve3D(...)
sage: f = surface.natural_frame()
sage: print f[0]
}}}
1. For the functions like `natural_frame` that return a frame, it would
be more in line with current Sage code (see for instance the `basis`
member function for vector spaces) to return a full frame as a list.
However, as I'm proposing a fairly large change, I wanted to ask your
opinion before going ahead. Just to see what would happen, though, I made
the changes listed above and it doesn't break anything -- the code as-is
doesn't rely on computing the individual components of all those tensors.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10132#comment:10>
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.