Ім'я файлу: Лекція 3.docx
Розширення: docx
Розмір: 1302кб.
Дата: 10.10.2022
скачати
Пов'язані файли:
Інноваційні проекти у світі.docx
АФФЗ для практичних.docx
Тести-до-ЗМ-1.pdf
Мерчандайзинг в аптеці (1).doc
Види, структура навчальних закладів.docx
Реферат Ющик О..doc
Реферат менеджмент.docx
6 клас приклади залежності графіків.doc
Порівняльний аналіз загальної та спрощеної системи оподаткування
Порівняльний аналіз загальної та спрощеної системи оподаткування
національно-патріотичне виховання.docx
Основи сертифiкацii.doc
семінарські заняття Біологічні аспекти....docx
Лозоплетіння дипломна робота.docx
Тести з креслення.doc
Реферат_Основні типи конфліктогенів.docx

Лекція 3


Оператор двокрапка:
Дуже часто потрібно виконати формування впорядкованих числових послідовностей. Такі послідовності потрібні для створення векторів або значень аргументів х при побудові графіків. Матлаб використовує для цього оператор ‘:’ . Ця конструкція створює зростаючу послідовність чиссел, що починається з початкового значення, змінюються на заданий крок і закінчуються на ......... якщо крок не заданий він приймає значення 1, якщо кінцеве значення вказане менше ніж початкове значення видається початкове з ......
Оператор розгалуження if

Логічний оператор if

Ця конструкція має декі

Якщо логічна умова приймає значення ‘0’, то оператори які ідуть за логічною умовою не виконуютьс. Оператор end вказує на кінець умовного оператора if. До поняття оператор 1, входять ...... В останн
Як і в інших алгоритмічних мовах, оператор if допомагає здійснити розгалуження процесу обчислень залежно від будь якої умови.
Оператори циклів

В Матлаб існують 3 типи операторів циклу. For…end використовується для організаціх циклу з фіксованою кількістю повторень. Він має вигляд:

for var = Вираз оператори end;



Var - лічильник циклу, це будь-яка змінна, зазавичай це i, j, k, l тощо.

Вираз записується як s:d:e, де s - це початкове значення лічильника циклу var , d - крок зміни, е - кінцеве значення. Можливий запис у вигляді як s:e тоді крок d буде дорівнювати одиничці
Список операторів закінчується ключовим словом end. Оператор continue передає управління в наступну ітерацію циклу пропускаючи операції, які записані за ним. Використовуєм оператор break для дострокового переревання циклу. Можливі вкладені цикли:
>> for i-1:3 for j=1:3 a(i,j)=i*j; end; end;
В результаті буде формуватися матриця а:
>> a

a=

1 2 3

2 4 6

3 6 9
While…end

Цикли while …end виконуються доти доки виконується задана умова. Записується у вигляді: while Логічна умова Оператори end.
Повідомлення про помилки, та виправлення помилок
С истема Матлаб контролює правльність написання програм, та за наявності помилок видає відповідне повідомлення в вікні команд, при цьому вказується номер рядка, де допущена помилка, та характер помилки. Після з’ясування суті помилку її необхідно виправити в тексті програми, зберегти m-файл колмандою save та знову виконати програму. Перед цим бажано очистити вікно команд від повідомлення про помилки, щоб не захаращувати отримане зображення за допомогую команди clear.

Основи графічної візуалізації обчислень

В багатьох галузях науки та тахніки чисельне вирішення завдань недостатня для аналізу результатів. Потрібне ще графічна інтерпретація у вигляді епюр, параметрив, напружно-деформованого стану, елементів пружних систем, форми коливань та втрати стійкості, поведінки рішень на заданому тощо. Матлаб дозволяє вирішувати ці завдання досить простими процедурами, спочатку протрібно задати інтервал зміни аргументу х від початкового значення до кінцевого з кроком d, що здійснюється оператором “:”. Далі використовується команда побудови графіка будь-якої функції у=f(х), яка має ім’я plot. Plot будує не інстинний графік функції f(x), а лише задане число елементів вектора число точок. Ці точки потім з’єднуються відрізками прямих, тобто виконується кусково лінійна інтерполяція даних графіка, якщо число точок досить велике, отримана крива сприймається як цілком істенне графік функції у=f(х). При 10-20 виходить ламана крива.
Побудова графіків відрізками прямих

Для побудови графіка функції у=f(х) потрібно задати сукупність точнок х та у. Для аргументу х виконується оператором “:”, для у належним програмування висловлювання для функції, тобто необхідно застосувати арифметичні операції над масивами. Для відображення таких функції використовується Декартова прямокутна система координат. Команда побудови графіків у=f(х) має низку параметрів.

  1. Plot(x,y) - будує графік у=f(х) координати точок х та у, якої беруться із векторів однакового розміру.

  2. Plot(x,y,s) - аналогічна команді попередні, але тип лінії графіка можна ставити за допомогою рядкової константи s, значення якої представленно в табл. 1. Ми можемо задавати типи ліній, колір ліній, типи точок, або типи ліній.

Табл. 1



Наприклад:

y1 = sin x; y2 = sin2 x; y3 = sin3 x

>> x=-2*pi:0.01*pi:2*pi; y1=sin(x); y2=sin(x).^2; y3=sin(x).^3;

>>plot(z,y1,’-m’,x,y2,’-.+ r’,x,y3, ‘- - ok’)
Тут графік фунції y1 = sin x малюється суцільною фіолетовою лінією, графік y2 = sin2 x малюється штрихпунтирною лінією червоного колюру, граф y3 = sin3 x малюється кружками чорного кольору.
Графіки дискретних відлиіків функції

В опорі матеріалів та буд механіці прийнято графіки наприжено-деформованого стану штрихувати. Для побудови таких граф використовужттся команда stem(…). Будує графік із зафарбованими частинами між нульовою лінією та кривою y=f(x).
stem( ... , ‘LINESPEC’) - аналгічна попередній команді y=f(x), але має специфікацію лінії LINESPEC подібно до рядкової константи рядкової команди plot(х, y, s).
Stem( … , ‘filled’) - будує графік функції y=f(x) із зафарбованими маркерами.
Побудова графіків поверхонь

Для побудови графікі функції z(x, y) використовується команда plot3, яка є аналогом команди plot. Вона будує аксонометричне зображення трьохвимірної поверхні і має такі форми:

Plot3(x, y, z) будує масив точок представлених векторами x, y, z та з’єднує їх відрізками прямих.

Plot3(X, Y, Z). x, у, z - це 3 матриці однакового розміру, будують точки з координатами такі як xi, yi та zi, і з’єднують їх відрізками прямих. Приклад побудови графіка тривімірної поверхні:

Z = X2 + Y2
>>[X Y] = meshgrid([ -3:0.15:3])

>>Z = X.^2 + Y.^2;

>> plot3(X, Y, Z)
Так саме легко забезпчуєть побудова графіків складних поверхонь представлених фунцією двох змінних z(x, y), таку графіку називають називають 3д графікою. Потрібно тільки знати якою командою реалізовується той чи інший графік. Наприклад, для побудови графіка поверхні та її проекції у вигляді контурного графіка на площину під поверхнею достатньо використовувати наступний фрагмент програми:
[X Y]=meshgrid(-5:0.1:5);

Z=X.*sin(X+Y);

meshc(X,Y,Z)


Вимкання та вимикання масштабної сітки

При побудові графіків поруч із розміткою осей часто необхідно мати масштабну сітку. Команди грід дозволяють керувати цим процесом. Якщо після команди побудови графіків додати команду вмикання або вимакання масштабної сітки можна отримати графік з необходним видом.

Grid - послідовно здійснює включення та відключення сітки

Grid on -включає сітку

Grid off - виключає сітку
Подання кількох графіків в одному вікні

Іноді потрібно в одному вікні розмісти кілька графіків без накладання їх один на одний. Для цього є команда subplot, яку необхідно записати перед командою plot, розбиває графічне вікно m n p підвікна, при цьому m - число підвікон по вертикалі, число n - число вікон по горизонталі і число p - номер підвікна в якому буде виводитися поточний графік. Тобто subplot розбиває графки, а не будує графіки.
subplot(m, n, p)
Графічна функція fplot

Матлаб має засоби для побудови графіків та таких функція як sin(x)/x, які мають усовні невизначності. Це робиться за допомогою графічної команди fplot.
fplot(‘f(x)’, [xmin xmax])

Вона дозволяє будувати графік функції f(x), яка задана в символьному вигляді в інтервалі зміни f(x) від xmin до xmax без фіксованого кроку змінної х. Один із варіантів її застосування демонструє рис 3.2. Хоча в процесі обчислень попереджння про помилку виводиться (ділення на 0), але графік будується правильно, при x=0 sin(x)/x=1. Один із варіантів її застосування демонструє рисунок 3.2.
>>fplot(‘sin(x)/x’,[-10 10])


Графіки у логарифмічному масштабі

Для побудови графіків функцій зі значеннями х та у, що змінюється в широких межах, нерідко використовуються логарифмічні масштаби. Розглянемо комадни, що використовуються у таких випадках:

lolglog(…) - синтаксис команди аналогічний раніше розглянутій функції plot логарифмічний масштавб використувується для координатних осей х та у.
>>logspace(-1,3); loglog(x,exp,(x)./x); grid on


Нерівномірне розташування ліній координатної сітки савідчить про логарифмічний масштаб осей.
Графіки у напів логарифмічному масштабі

У деяких випадка бажиний напівлогарифмічний масштаб графіків, коли по одній осі задається логарифмічний масштаб, а за іншою - лінійний.

У побудовві графіків функцій у напівлогарифмічний масштабі використовуються такі команди:

semilogx(…) - будує графік функцій у логарифмічному масштабі (основа 10) по осі х та лінійному по осі у;
semilogy(…) - навпаки будує графік функцій у логарифмічному масштабі по осі у та лінійному по осі х;
(...) - запис параметрів виконутья за аналогією до функції plot

Наприклад:
>> x = 0:0.5:10; semilogy(x,exp(x)),grid on

Стовпцеві діаграми

Стовпцеві діаграми широко використовуються в літературі присвяченій фінансам та економіці, а також у математичній літературі. Команди для побудови таких діаграм:
bar(x, Y) - будує стопцевий графік елементів вектора Y (або групи стопців матриці Y) зі специфікацією положення стопців заданою значеннями елементів вектора х, які повинні іти в монотоно зрозстаючому порядку.
bar(Y) - будує графік значень елементів матриці Y, але фактично для побудови графіка використовується вектор х дорівнює від 1 до m.
bar(x, Y, WIDTH) or bar(Y, WIDTH) - команда аналогічна раніше розглянутим але з специфікацією ширини стовпців, якщо WIDTH>1 стовпці перекриваються, за замовчуванням ширина стовпців WIDTH=0.8
bar( ... , ‘Специфікація’) - для завдання специфікацій графіків за аналогією з командою plot. Специфікація ‘stacked’ задає малювання всіх n стовпців один на одному.

Наприклад:
>> bar(rand(12, 3), ‘stacked’), colormap(cool)
Крім команди bar існує аналогічна їй за синтаксисом команда barh, яка будує стопцеві діаграми з горизонтальним розташуванням стопців
>>barh(rand(5, 3), ‘stacked’), colormap(cool)

Гістограми

Класична гістограмі характаризує графічно подання зняченнь елементів ветора у в n інтервалів з поданням цих чисел у вигляді стовпцевої діаграми. Для отримання гістограми служиться функція hist, що записується у такому вигляді:
N = hist(Y) - повертає вектор чисел подань для 10 інтервалів, що виберається автоматично, якщо Y матриця, то видається масив даних про кількість влучень для кожного її стовпця
N = hist(Y, M) - аналогічна вище розглянутій, але використовується n ітервалів (n-скаляр)
N = hist(Y, X) - повертає числа подань елементів вектора у інтервалів, центри яких задані елементами вектора х
[N, X]=HIST(…) - повертає кількість попадань в інтервали та дані про центри інтервалів
Наприклад:
>>x=-3:0.2:3; y=random(1000,1);
>>hist(y,x); h=hist(y,x)


скачати

© Усі права захищені
написати до нас