Superficies equipotenciales usando ParametricPlot
Entonces estoy tratando de trazar líneas en las que la siguiente función es una constante $$ \frac{\left(-\Sigma (r,0.99,\theta )+2 r^2-0.99^2 r \sin ^2(\theta )\right)^2}{\Delta (r,1,0.99) \Sigma (r,0.99,\theta )^3}+\frac{0.99^4 \sin ^2(\theta ) \cos ^2(\theta ) \Delta (r,1,0.99)}{\Sigma (r,0.99,\theta )^4} $$ dónde $$\Delta (r,M,a):=a^2-2 M r+r^2\quad\text{and}\quad\Sigma (r,a,\theta):=a^2 \cos ^2(\theta )+r^2. $$Estoy usando el siguiente código que fue motivado por el segundo comentario de esta publicación
Σ[r_, a_, θ_] := r^2 + a^2*Cos[θ]^2;
Δ[r_, M_, a_] := r^2 - 2 M r + a^2;
cValues =
{0.01, 0.1, 0.08, 0.06, 0.003, 0.005, 0.12, 0.14, 0.2, 0.15, 0.02, 0.04,
0.03, 0.18, 0.22, 1.5, 2.3, 0.002, 0.0025, 0.003, 0.0015, 0.0018, 0.0023,
0.0011, 0.0009, 0.0008, 0.0007, 0.0006, 0.0005};
trajectories =
Function[{x, y, r, θ},
Σ[r, 0.99, θ]^(-3)*Δ[r, 1, 0.99]^(-1)*(2 r^2 -
Σ[r, 0.99, θ] - 0.99^2 r Sin[θ]^2)^2 +
Δ[r, 1, 0.99]*0.99^4*Σ[r, 0.99, θ]^(-4) Sin[θ]^2 Cos[θ]^2];
ParametricPlot[{Sqrt[r^2 + 0.99^2]*Sin[θ], r Cos[θ]}, {r, 0, 5}, {θ, 0, Pi/2},
PlotStyle -> {Green}, MeshFunctions -> {trajectories}, Mesh -> {cValues}]
y da el resultado como se muestra aquí (el segundo es la versión alejada del primero).
Como puede ver, la esquina inferior izquierda tiene un comportamiento extraño y no estoy seguro de por qué. Tampoco entiendo qué trajectoriesestá haciendo la parte de este código, más precisamente, ¿por qué Functiontiene 4 argumentos al principio? Por favor ayuda.
(contexto: estoy tratando de trazar las líneas de aceleración constante en el espacio-tiempo de Kerr)
Respuestas
El MeshFunctionses un método de gran alcance que siempre uso.
Aquí vemos el Meshdesde 3D. Entonces dibujamos elParametricPlot3D $$\begin{cases}x=\sqrt{r^2+0.9801} \sin (\theta ),\\ y=r \cos (\theta ),\\ z=f(r,\theta)\end{cases}$$
Configuramos el ViewPoint={0,0,Infinity}y usamosViewProjection -> "Orthographic"
Clear["`*"];
Σ[r_, a_, θ_] = r^2 + a^2*Cos[θ]^2;
Δ[r_, M_, a_] = r^2 - 2 M r + a^2;
f[r_, θ_] = Σ[r,
0.99, θ]^(-3)*Δ[r, 1,
0.99]^(-1)*(2 r^2 - Σ[r, 0.99, θ] -
0.99^2 r Sin[θ]^2)^2 + Δ[r, 1,
0.99]*0.99^4*Σ[r,
0.99, θ]^(-4) Sin[θ]^2 Cos[θ]^2;
cValues = {0.01, 0.1, 0.08, 0.06, 0.003, 0.005, 0.12, 0.14, 0.2, 0.15,
0.02, 0.04, 0.03, 0.18, 0.22, 1.5, 2.3, 0.002, 0.0025, 0.003,
0.0015, 0.0018, 0.0023, 0.0011, 0.0009, 0.0008, 0.0007, 0.0006,
0.0005};
ParametricPlot3D[{Sqrt[r^2 + 0.99^2]*Sin[θ], r Cos[θ],
f[r, θ]}, {r, 0, 5}, {θ, 0, π/2},
PlotPoints -> 150, MeshFunctions -> (#3 &), Mesh -> {cValues},
PlotStyle -> Green, ViewProjection -> "Orthographic",
ViewPoint -> {0, 0, ∞}, Lighting -> {White, "Neutral"}]
En cuanto a su pregunta de por qué trajectoriestiene cuatro argumentos: MeshFunctionspara la ParametricPlotnecesidad de tres a cuatro argumentos. Los dos primeros corresponden a las coordenadas de la parcela, los dos últimos (o uno) a los parámetros del ParametricPlot.
Para apreciar esto mejor, considere el siguiente ejemplo:
funs = {
Function[{x, y, u, v}, x],
Function[{x, y, u, v}, y],
Function[{x, y, u, v}, u],
Function[{x, y, u, v}, v]
};
Row@Table[ParametricPlot[
{r Cos[\[Theta]], r Sin[\[Theta]]},
{r, 0, 1}, {\[Theta], 0, \[Pi]/2},
MeshFunctions -> fun,
Mesh -> 10,
ImageSize -> Small
], {fun, funs}
]
@Natas, lo que pasa con esta pregunta es que los equipotenciales no se trazan en coordenadas polares, se trazan en unas coordenadas especiales similares a las coordenadas polares (observe el primer argumento en ParametricPlot, "ParametricPlot [{Sqrt [r ^ 2 + 0,99 ^ 2] * Sin [[Theta]], r Cos [[Theta]]}, ... "). Es por eso que se usó la forma ParametricPlot en lugar de ContourPlot, le permite usar coordenadas definidas por el usuario que no están integradas en Mathematica. Con coordenadas polares puede realizar la transformación a coordenadas cartesianas "Polares" -> "Cartesianas", porque están integradas en Mathematica, pero no con coordenadas definidas por el usuario, que es el caso en esta pregunta. No estoy seguro, si ContourPlot admite coordenadas definidas por el usuario