Я играл с этим некоторое время, Может кто-нибудь объяснить, почему я получаю разные ответы от Code1 и Code2? Что происходит с фактическим сценарием 'dsolve()', который делает вывод двух кодов разным? Может ли выход будет таким же, если я просто использовал другой синтаксис (т.е.»;».)dsolve генерирует несогласованные выходы
%Code1:
syms Qua t Area height
rate_in = 3*Qua*(sin(t))^2;
delta_Vol = dsolve('DAreaY = rate_in - Qua');
delta_Height= dsolve('Dheight = ((rate_in - Qua)/Area)', 'height(0) = 0');
subfnc1 = subs(rate_in, {Qua}, {450});
fnc1 = subs(delta_Height, {'rate_in'}, {subfnc1});
fnc1 = subs(fnc1, {Area, Qua}, {1250,450});
fnc_main = matlabFunction(fnc1);
fnc_main(0:10)';
%Code2:
syms Qua t Area height
rate_in = 3*Qua*(sin(t))^2;
delta_Vol = dsolve('DAreaY = 3*Qua*(sin(t))^2 - Qua');
delta_Height= dsolve('Dheight = ((3*Qua*(sin(t))^2 - Qua)/Area)', 'height(0) = 0');
fnc1 = subs(delta_Height, {Area, Qua}, {1250,450});
fnc_main = matlabFunction(fnc1);
fnc_main(0:10)';
, что это о dsolved функции, которую я не понимаю
спасибо, это еще одна перспектива/маршрут в том, как я могу выбрать код, который книга/инструктор не предлагает. Спасибо, поскольку я предположил, что dsolve() принимает только строки, но теперь я вижу, как я могу вставлять символические аргументы. Я также никогда не знал, что могу иметь объявление переменной, например, высоту, явно определенную в терминах другой переменной, например (t). – ReadyF4i