¿Alguien tiene experiencia en hacer suposiciones sobre las coordenadas en el paquete de geometría diferencial de Maple?
Mi problema es que estoy tratando de calcular algunos operadores de Laplace-Beltrami. Maple tiene este comando, pero la salida es casi ilegible a veces debido a los muchos funciones He intentado crear un ejemplo fácil: configurar un marco y una métrica riemanniana como esta
DGsetup([x], R);
h := evalDG(dx &t dx/(x^2+1)^2);
y luego tratando de evaluar
Laplacian(h, f(x));
devoluciones
Obviamente debiera ser pero Maple no tiene en cuenta como una variable real. En este ejemplo no está mal, pero en dimensiones más altas este problema hace que los cálculos sean completamente inútiles. pero corriendo
Laplacian(h, f(x)) assuming x::real;
devoluciones
. Además, no puedo usar assume
coordenadas ya que están protegidas.
En la página de ayuda de The Maple en DGconjugate se menciona que las variables de coordenadas se suponen reales, pero probablemente esto sea solo para el propósito de ese comando.
¿Alguien ha tenido un problema similar y encontró una solución satisfactoria?
Aún puede utilizar esa suposición en el resultado del Laplacian
comando. Puede utilizarlo en una llamada a simplfy
, por ejemplo.
P.ej,
restart;
with(DifferentialGeometry):
DGsetup([x], R):
h := evalDG(dx &t dx/(x^2+1)^2):
result := Tensor:-Laplacian(h, f(x)):
simplify(result) assuming x::real;
Eso será más simple que tener que averiguar todas las sustituciones para ingresar a mano.
Uso este paquete a menudo y no sé cómo resolverlo usando la funcionalidad de
paquete en sí, pero siempre se pueden eliminar estas expresiones ad hoc usando la subs()
rutina:
with(DifferentialGeometry):
DGsetup([x], R);
h := evalDG(dx &t dx/(x^2+1)^2);
subs({sqrt((x^2+1)^2) = x^2 + 1, csgn(x^2+1) = 1}, Tensor:-Laplacian(h, f(x)));
Esto produce una salida más limpia
Dmitri