Помогите найти ошибку MATLAB

Компьютеры программирование математика Наука matlab

подпрограмма:

function z=lab1_pr(t,y)
A=0.001;
B=0.0005;
f1=0.001;
f2=0.001;
H=0.2;
k=0.005;
z(1)=-(H/A)*y(2)'-(f1/A)*y(1)'-(k/A)*y(2);
z(2)=(H/B)*y(1)'-(f2/B)*y(2)';
z=z'';


условие:

clc
y0=[0.001 0.005];
[t,y]=ode45('lab1_pr',[0.001 0.005], y0);
plot(t,y(:,1));grid
figure
plot(t,y(:,2));grid


Ошибка:
Error using feval
Undefined function 'lab1_pr' for input arguments of type 'double'.

Error in odearguments (line 88)
f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0.

Error in ode45 (line 114)
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...
Ответы:
У тебя с функцией беда:
function z = lab1_pr(t,y)
A=0.001;
B=0.0005;
f1=0.001;
f2=0.001;
H=0.2;
k=0.005;
z = zeros(2,1); % объявляем вектор-СТОЛБЕЦ
z(1)=-(H/A)*y(2)-(f1/A)*y(1)-(k/A)*y(2);
z(2)=(H/B)*y(1)-(f2/B)*y(2);


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.