# Dynamic Plots with ContourPlot3D

I have an equation \begin{equation} x^2+y^2+z^2+v^2+2rvz=1. \end{equation} Given a value for $r$ and $v$, I know that the equation is a surface. How do I produce a dynamic plot so that I could see how the surface changes as I vary $r$ and $v$? Also, for a given $r$ and $v$, how can I get sample points (values of $x,y,z$)? Is there a way to do it in tabular form?

• Use Manipulate, probably with ContourPlot3D. – bbgodfrey Mar 30 '16 at 3:43

Using a single Manipulate

Manipulate[
Column[{
ContourPlot3D[
x^2 + y^2 + z^2 + v^2 + 2 r v z == 1,
{x, -5, 5}, {y, -5, 5}, {z, -5, 5},
ImageSize -> 360],
FindInstance[
x^2 + y^2 + z^2 + v^2 + 2 r v z == 1,
{x, y, z}, Reals, n] // N //
Grid[#, Alignment -> Left] &}],
{{r, 2}, -5, 5, .1, Appearance -> "Labeled"},
{{v, 2}, -5, 5, .1, Appearance -> "Labeled"},
{{n, 10, "Number of Samples"}, 5, 50, 5,
ControlType -> SetterBar}] Manipulate[ContourPlot3D[
x^2 + y^2 + z^2 +v^2+2r v z== 1, {x, -2, 2}, {y, -2, 2}, {z, -2, 2}],{v,-2,2},{r,-2,2}]


Also, for the second question, you can use something like this:

r0=0

v0=0

{x,y,z}/.FindInstance[x^2 + y^2 + z^2 +v^2+2r v z== 1/.{r->r0,v->v0},{x,y,z},Reals,10]

That 10 at the end says how many sample points for these values of r and v you want.

• But this will be a hypersurface, since there are 5 variables. – Janus Mar 30 '16 at 4:00
• Well if you have given values of r and v then you only have 3 unknowns? – MathX Mar 30 '16 at 4:05
• @Janus, and how exactly were you expecting a computer program to present a hypersurface? – J. M. is away Mar 30 '16 at 5:04