logo
Программные средства для экономико-математических расчетов (матмод) / ЛР_ПСЭМР / типак / Это образец отчета Катюх

3.2. Нелинейные уравнения (MatLab)

Задание 5.

Блок-схема алгоритма представлена в п.2.4.

Задание 6. Программа решения нелинейного уравнения с использованием средств программирования MatLAB.

Сначала сформируем М-файл reshenieдля решения нелинейного уравнения и построения графика в заданной области.

functions=reshenie

%Программа решения нелинейного уравнения.

%Уравнение: 3*sin(sqrt(x))+0.35*x-3.8=0.

%Область, содержащая корень: [2,3].

%Метод решения: последовательных приближений.

clear

clc

eps=0.00001; % Точность решения.

i=2;

x(i-1)=2; % Начальное приближение.

x(i)=(3.8-3*sin(sqrt(x(i-1))))/0.35;

while abs(x(i-1)-x(i))>eps

i=i+1;

x(i)=(3.8-3*sin(sqrt(x(i-1))))/0.35;

end

s=x(i);

x=2:0.01:3;

y=3*sin(sqrt(x))+0.35*x-3.8;

plot(x,y,'+g');gridon; % Построение графика.

При запуске программы в командной строке появится следующее:

>> ans=

2.2985

>>

График нелинейного уравнения в заданной области имеет вид:

Рис. 8. График уравнения 3sin√x + 0.35x – 3.8 = 0 на отрезке [2, 3].

Задание 7. Проверка с помощью встроенных функций MatLAB.

function f=vstr(x)

% Функция, корень которой ищется

f=0.35*x+3*sin(sqrt(x))-3.8;

Затем в командной строке найдем корень этой функции на промежутке [2, 3] и построим график с помощью команды plot.

>> k=fzero('vstr',[2 3])

k =

2.2985

>> x=2:0.00001:3;

>> f=0.35*x+3*sin(sqrt(x))-3.8;

>> plot(x,f);grid on;

>>

Построение графика.

Рис. 9. График уравнения 3sin√x + 0.35x – 3.8 = 0 на отрезке [2, 3].

Задание 8. Построение трехмерного графика функции sin(d)*y(x) при изменении d от 0 до 2π с шагом π/6, а x в заданной области.

Сформируем М-файл trehmдля построения трехмерного графика функции

z(x,d)=sin(d)*y(x).

% Построение трехмерного графика функции.

% Функция: z(x,d)=sin(d)*y(x).

% Область изменения d: [0, 2*pi].

% Область изменения х: [2, 3].

% Шаг изменения d - pi/6.

clear

clc

d=0;

x=2;

for i=1:13

for j=1:101

z(i,j)=(3*sin(sqrt(x))+0.35*x-3.8)*sin(d);

x=x+0.01;

end

d=d+pi/6;

end

x=2:0.01:3;

d=0:pi/6:2*pi;

surf(x,d,z);grid on;

Рис. 10. Трехмерный график функции sin(d)*y(x), где y(x)= 3sin√x + 0.35x – 3.8 = 0 с шагом h=π/6 при изменении d от 0 до 2π.