es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Trazar ecuaciones de recursión dual con wxplot2d siempre excede la pila de control.

Tengo el siguiente código de Maxima:

A[t] :=
    if t = 0 then A0
    else (a + b) * A[t - 1] + B[t - 1] + c
;
B[t] :=
    if t = 0 then B0
    else (a - b) * B[t - 1] + c
;
a: 0.1;
b: 0.1;
c: 1;
A0: 100;
B0: 0;
wxplot2d(A[t], [t, 0, 100]);

Lo único un poco extraño que se me ocurre es que la ecuación de recursión A depende de la ecuación de recursión B. Creo que todo lo demás es extremadamente básico.

Pero cuando lo ejecuto, siempre obtengo el siguiente error que se repite varias veces y no se muestra ningún gráfico.

Maxima encontró un error de Lisp:
El control de apilamiento se agotó (no hay más espacio para marcos de llamada de función).
Esto se debe probablemente a llamadas de función anidadas o recursivas infinitas, o a una llamada final que SBCL no puede o no ha optimizado.

Incluso cuando trato de hacer el gráfico desde el paso de tiempo 0 a 1 con wxplot2d(A[t], [t, 0, 1]);, que según mi cuenta solo serían dos recurrencias y una referencia externa a la función, sigo obteniendo el mismo error. ¿No hay forma de que Maxima pueda graficar estas ecuaciones?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en Maxima, parece que el código proporcionado puede estar causando un error de desbordamiento de pila debido a llamadas de función anidadas en exceso o recursivas infinitas. La ecuación de recursión A depende de la ecuación de recursión B, lo cual podría contribuir a este problema.

    Una posible solución podría ser optimizar las llamadas de cola en el código o reducir el número de llamadas recursivas a funciones. Además, puede ser útil verificar los valores de entrada y asegurarse de que estén dentro de los rangos esperados.

    En cuanto al problema con la representación gráfica, puede ser útil verificar si hay suficiente espacio de memoria disponible para asignar a la función de representación gráfica. También podría ser útil probar funciones más simples para determinar si el problema está en el código o en la función de representación gráfica en sí.

Comments are closed.