Open ea007ec0-dfc6-4661-b6de-0fd1ed448353 opened 2 years ago
Changed author from Vincent, Niranjana to Vincent Delecroix, Niranjana K M
Changed keywords from plot, vector, field3d to plot 3d vector field, plot_vector_field3d()
A ticket should not be set to "needs review" until it has a git branch that incorporates the proposed changes.
This isn't a bad idea at all - and your comment about 2d plots maybe implies #2922 is already done? But it would also need a significant amount of documentation to show how it can be used.
See also:
scale='normalize'
if the approach on this ticket is taken)No #2922 is not done. By default the vectors are normalized and scaling option is not provided.
Scaling is available in VectorField.plot()
which is a part of sage manifolds but is a bit slow due to wide capabilities of sage manifolds and its methods.
Scaling is available in
VectorField.plot()
which is a part of sage manifolds but is a bit slow due to wide capabilities of sage manifolds and its methods.
I see. So really we currently have two ways of getting vector fields - the plot methods and the manifold methods. It might be nice to unify those somehow, though (obviously) not in this ticket.
Replying to @kcrisman:
I see. So really we currently have two ways of getting vector fields - the plot methods and the manifold methods. It might be nice to unify those somehow, though (obviously) not in this ticket.
See Eric's comments in:
https://groups.google.com/g/sage-devel/c/tMH1RZNyC9s/m/aJhd3vDtAgAJ
https://groups.google.com/g/sage-devel/c/tMH1RZNyC9s/m/2FQTQrn3AgAJ
https://groups.google.com/g/sage-devel/c/tMH1RZNyC9s/m/gKoZ5nkCAwAJ
plot_vector_field3d()
lacks user defined scaling. By default the plotted vectors in the field are auto scaled (from 0 to 1) by using maximum length vector in the plotting domain. It is a very nice thing to auto scale like this as it avoids possible overprint of vectors with those ahead of them. But sometimes if user needs them to be scaled to a desired factor say 1 (no scaling) then for those situations we propose availability of user defined scaling as available in VectorField.plot()
. This can be achieved by following modifications insrc/sage/plot/plot3d/plot_field3d.py
:scale='auto'
toplot_vector_field3d()
which can take any real number as scaling factor. Anything other than real number is ignored and auto scaling is performed. Default value 'auto' has nothing to do other than being a non-real quantity, a string, telling it to go with default auto scaling. We wish auto scaling be the default.into
Component: graphics
Keywords: plot 3d vector field, plot_vector_field3d()
Author: Vincent Delecroix, Niranjana K M
Issue created by migration from https://trac.sagemath.org/ticket/34038