12688

Решение уравнений в пакете MatLab

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа №1. Решение задач в MatLab Цель лабораторной работы закрепление практических навыков решения задач в среде математического пакета MatLab необходимых выполнения лабораторных работ по дисциплине. Этап I. Решение уравнений в пакете MatLab Запустить п

Русский

2013-05-02

925 KB

19 чел.

Лабораторная работа №1. Решение задач в MatLab 

Цель лабораторной работы – закрепление практических навыков решения задач в среде математического пакета MatLab необходимых выполнения лабораторных работ по дисциплине.

Этап I. Решение уравнений в пакете MatLab 

Запустить программу лабораторной работы TIPSlab0.exe и MatLab. Получить задание на лабораторную работу. Например, необходимо найти точки пересечения графиков заданных уравнениями:

Для решения задачи Вам необходимо понять сколько решений будет иметь данная система уравнений и их примерное значения. Для этого строим графики функций и примерно находим точки пересечений. Список команд MatLab приведен ниже:

Результат выполнения команд, показан на рис. П.1.

Рис. П.1. Результаты графического решения

По графикам П.1, определяем что система имеет две точки пересечений, их примерные значения , .

Для более точного решения необходимо воспользоваться функцией fsolve():

,

Для автоматической проверки массив  записывается на диск:

.

Ключ  указывает формат сохранения чисел, необходимый для контролирующей программы.

После этого в контролирующей программе нажимаем кнопку проверить и выбираем файл с сохраненными результатами. В случае если ответ совпадет с заранее известным программе, то программа пишет сообщение о выполнении первого этапа.

Кроме этого Вам предоставляется возможность посмотреть правильный ответ, и сравнить с введенным. Но при этом Вам придется решать новую систему.

Этап II. Моделирование преобразований сигналов

На втором этапе выполнения лабораторной работы Вам необходимо смоделировать преобразование сигнала нелинейным элементом, предложенным контролирующей программой.

Например Вам необходимо пропустит сигнал вида через нелинейный элемент заданный вольт–амперной характеристикой представленной на рис. П.2.

  Рис. П.2. Заданная вольт–амперная характеристика нелинейного элемента

По заданному виду нелинейного элемента необходимо составить блок–схему функции преобразования отсчетов сигнала. Для примера, приведенного на рис. П.2, блок–схема будет иметь вид (рис. П.3).

Рис. П.3. Блок–схема функции моделирования нелинейного элемента

По блок–схеме составляем функцию MatLab:

function y=func(x)

if( x<= –1 )

 y = 0 ;

else

 if( x<=16 )

  y = (2/17)*x+(2–16*2/17) ;

else

 if( x<=34 )

  y = 2 ;

 else

  if( x<= 54 )

   y = (1/10)*x+(4–54*(1/10)) ;

  else

   if( x<= 66)

     y = (2/12)*x+(6–66*2/12) ;

   else

    y = (–3/8)*x+(3–74*(–3/8)) ;

   end

  end

 end

 end

end 

Функция должна быть сохранена в текстовом файле. Имя файла должно совпадать с именем функции, расширение должно быть ‘М’.

Для того что бы файл мог быть вызван из MatLab, он должен быть сохранен в каталоге, к которому проложен путь в среде MatLab. Список всех путей можно получить с помощью команды path. С помощью этой же команды можно добавить свой каталог к маршрутам поиска:

path(matlabpath, ‘новый каталог’).

Для проверки работы созданной функции, рекомендуется вызвать ее несколько раз, передав в качестве аргументов значения узловых точек: func(16) и сравнить полученные значения с ожидаемыми по вольт–амперной характеристики.

Если функция работает правильно, то создаем массив, содержащий заданный входной сигнал.

T0 = 36.7 ;

Tmax = 57.3 ;

N = 450 ;

dt =  (Tmax-T0)/(N-1) ;

T = T0 : dt : Tmax ;

U=34+33*sin(15*T+0.4) ;

Пропускаем полученный сигнал через нелинейный элемент:

for i = 1 : N

Y(i) = func( U(i) );

end  

Строим графики входного и выходного сигналов. Рекомендуется также по сигналам восстановить вольт–амперную характеристику и сравнить ее с заданной:

plot( T, U, T, Y )

plot( U, Y )

Если Вы уверенны что сделали задание правильно, то необходимо сохранить массив с выходным сигналом в файле и проверить его с помощью контролирующей программы:

save d:\stud\result2.mat Y     

В контролирующей программе Вы можете сравнить Ваши результаты с результатами ожидаемыми компьютером, но в этом случае Вам придется выполнять новое задание.