11614

Решение задач в MatLab

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

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

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

Русский

2013-04-10

324.86 KB

85 чел.

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

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

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

Например, необходимо найти точки пересечения графиков заданных уравнениями:


Строим графики в программе MatLab:

x=-10:0.2:10;

y1=(15.23)*(x.^2)+(76.6*x)-48.2;

y2=-8.2*x-85.4;

plot(x,y1,x,y2);

Результат:


примерные значения:  
,  .

Уточняем с помощью функции fsolve:

a(1)=fsolve('(15.23)*(x.^2)+(76.6*x)-48-(-8.2*x-85.4)',-5);

a(2)=fsolve('(15.23)*(x.^2)+(76.6*x)-48-(-8.2*x-85.4)',-0.5);

sec=a;

save('C:\Documents and Settings\Михаил\Рабочий стол\ТИПиС\Лабы - отчёты и программы (МОИ)\ЛР-2\result.mat - double', 'a');


результат:
sec =

  -5.0850   -0.4829

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

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

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

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

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

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

По блок–схеме составляем функцию 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 

Сохраняем созданную функцию в текстовом файле с именем “func.m.

Проверяем данную функцию, передав в качестве аргумента значения узловых точек: func(16) , func(54) .

результат:  ans = 2, ans = 4;

Как мы видим, функция работает успешно: полученные значения совпадают с ожидаемыми по вольт–амперной характеристики.

Создадим массив, содержащий заданный входной сигнал.

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);



 

А также другие работы, которые могут Вас заинтересовать

42086. Измерение коэффициента нелинейных искажений 160 KB
  Ознакомиться с техническими описаниями и инструкциями по эксплуатации применяемых в работе приборов: измерителя нелинейных искажений ИНИ осциллографа. Собрать схему исследования нелинейных искажений для чего подать напряжение на вход четырёхполюсника от генератора сигналов встроенного в ИНИ выход четырёхполюсника соединить со входом ИНИ и осциллографа. Измерители нелинейных искажений измеряют непосредственно коэффициент .
42087. Створення Delphi-проекта з використанням компонентів-кнопок 79.82 KB
  Форма проекту повинна відтворювати зовнішній вигляд калькулятора за допомогою компонентів кнопок класу TBitBtn. Тоді до властивості Cption кнопок можна звернутися таким чином: Sender s TBitBtn.ТЗ Код програми...