Red de conocimientos turísticos - Conocimientos sobre calendario chino - Programa Matlab para encontrar soluciones numéricas a un sistema de ecuaciones diferenciales binarias de segundo orden.

Programa Matlab para encontrar soluciones numéricas a un sistema de ecuaciones diferenciales binarias de segundo orden.

Hay un problema con la ecuación o las condiciones iniciales, verifique cuidadosamente.

Razón: Si se siguen las condiciones iniciales actuales, los términos de la primera ecuación diferencial son 0 y la ecuación no funciona. Y en lo que respecta al algoritmo, el coeficiente de la derivada de segundo orden (orden más alto) es 0, lo que hará que el algoritmo de integración numérica no se inicie.

El código de referencia es aproximadamente el siguiente: m=1;

g=9.8

k=100; 1.1;

x0=[0.1?0?0?0];

?Definición x1=l,?x2=l',?x3=a,?x4=a'

dx=#(t,x)[x(2);?(m*x(1)*x(4)^2-m*g*cos(x(3))-k *(x (1)-l0))/m;?...

x(4);?(-2*m*x(1)*x(2)*x(4) m*g *x(1)*sin(x(3)))/(m*x(1)^2)];

[t,x]=ode15s(dx,[0? 10], x0);

lstr?=?{?'\itl', ?'{\itl}''', ?'\alpha', ?'\alpha'''?};

for?i=1:longitud(lstr)

subtrama(2, 2, i)

trama(t,?x(:,i) );

xlabel('Time')

ylabel(?lstr{i}?)

end

Nota: el # debería ser el símbolo AT para correo electrónico, que representa una función anónima en MATLAB. Debido a que este carácter será reconocido como una dirección de correo electrónico, es posible que la respuesta no se muestre normalmente (madre repugnante, despreciada), así que, para ser cauteloso, reemplácelo con # aquí.