Реферат по предмету "Информатика, программирование"


Программирование в MATLAB

Кафедра: Информационныетехнологии
ПРОГРАММИРОВАНИЕ В MATLAB

Операторы MATLAB
 
·         Операторыцикла
Цикл for
Синтаксис
forcount=start:step:final
команды MATLAB
end
Описание
count – переменная цикла,
start – ее начальное значение,
final – ее конечное значение,
step – шаг, на которыйувеличивается count при каждом следующем заходе в цикл
циклзаканчивается, как только значение count становится больше final.
Пример
Пустьтребуется вывести семейство кривых для x€ [0, 2π], которое заданофункцией, зависящей от параметра
y (x,a) = e-ax sin x,
для значенийпараметра а от -0.1 до 0.1. Ниже приведен листинг файл-программы для выводасемейства кривых.
Листингпрограммы
Figure
x = [0:pi/30:2*pi];
fora = -0.1:0.02:0.1
y= exp (-a*x).*sin(x);
holdon
plot(x, y)
end
В результатевыполнения программы появится графическое окно, которое содержит требуемоесемейство кривых.
 
Цикл while
Синтаксис
while условие цикла
команды MATLAB
end
Описание
Циклработает, пока выполняется (истинно) условие цикла. Для задания условиявыполнения цикла допустимы следующие операции отношения:Обозначение Операция отношения == Равенство = Больше или равно >  Больше ~= Не равно
Задание болеесложных условий производится с применением логических операторов. Логическиеоператоры приведены в следующей таблице
Оператор Условие Эквивалентная запись Логическое «и» xПример
Операторыветвления
Условныйоператор if
 
Синтаксис
if условие
команды MATLAB
end
Описание
Если условиеверно, то выполняются команды MATLAB, размещенные между if и end, а если условие неверно, то происходит переход к командам, расположенных после end.
Пример
Условныйоператор elseif
 
Синтаксис
if условие1
команды1
elseif условие2
команды2
………………………
elseif условиеn
командыn
else
команды
end
Описание
В зависимостиот выполнения того или иного условия работает соответствующая ветвь программы,если все условия неверны, то выполняются команды, размещенные после else.
Пример
Оператор switch
 
Синтаксис
switch переменная
case значение1
команды1
case значение2
команды2
……………………
case значениеn
командыn
otherwise
команды
end

Каждая ветвьопределяется оператором case, переход в нее выполняется тогда, когдапеременная оператора switch принимает значение, указанное после case, или одно из значение изсписка case. После выполнения какой-либо из ветвей происходит выход из switch, при этом значения,заданные в других case, уже не проверяются. Если подходящих значений для переменной ненашлось, то выполняется ветвь программы, соответствующая otherwise.
Пример
Прерыванияцикла. Исключительные ситуации.
 
Оператор break
Синтаксис
break
Оператор break используется приорганизации циклических вычислений: for…end, while…end. При выполнении условия
if условие
break
end
оператор break заканчивает цикл (for или while) и происходит выполнениеоператоров, которые расположены в строках, следующих за end. В случае вложенныхциклов break осуществляет выход из внутреннего цикла.
Обработкаисключительных ситуаций, оператор try…catch
Синтаксис
try
операторы,выполнение которых
можетпривести к ошибке
catch
операторы,которые следует выполнить
привозникновении ошибки в блоке
между try и catch
end
Описание
Конструкция try…catch позволяет обойтиисключительные ситуации (ошибки, приводящие к окончанию работы программы, например,обращение к несуществующему файлу) и предпринять некоторые действия в случае ихвозникновения.
Пример
Сервисныефункции
disp– осуществляет вывод текстаили значения переменной в командное окно
input– осуществляет запрос наввод с клавиатуры. Используется при создании приложений с интерфейсом изкомандной строки.
eval– выполняет содержимоестроки или строковой переменной, как команды MATLAB
clear– удаляет переменныерабочей среды.
сlc– производит очисткукомандного окна
Болееподробную информацию об этих и других функциях можно узнать, выполнив вкомандной строке
helpимя_функции

Задания навыполнение лабораторной работы
 
Номерконкретного варианта задания определяется преподавателем.
 
Задание №1
Данноезадание подразумевает нахождение для некоторой совокупности данныхалгебраического интерполяционного многочлена степени n: Pn(x).
Цельработы:
Необходимосоставить программу вычисления коэффициентов алгебраического интерполяционногомногочлена Pn(x)=a+a1x+ … +anxn.
Методическиеуказания:
Пусть,например, имеется следующая совокупность данных:
i 1 2 3
хi 1,2 1,4 1,6 1,8
yi 8,3893 8,6251 8,9286 8,9703
Коэффициенты a, a1, …, an определяются из решениясистемы уравнений:
/>
Здесь n– порядокинтерполяционного многочлена,
n+1 – количество заданных парточек (x, y),
a, a1,… an– искомые коэффициентымногочлена Pn(x)=a+a1x+ … +anxn).
Требованияк программе
Привыполнении данной работы необходимо:
·         Задатьграницы отрезка [x0, xn], на котором строится интерполяционный многочленP(x)
·         Задатьn – количество отрезков интерполяции (или, что то же самое, степеньмногочлена)
Примечание: x0,xn, n вводятся с клавиатуры.
·         Дляполучения исходных данных (x, y) (количество пар точек (xi,yi), по которым строится интерполяционный многочлен P(x) –n1=n+1) предусмотреть:
ü   Вводпроизвольно расположенных узлов xi, i=0, n с клавиатуры
ü   Расчетузлов xi, i=0, n, соответствующих равномерному расположениюаргумента x на отрезке [x0, xn]
ü   В пп. 1,2значения yi, i=0, n либо вводятся с клавиатуры (если исходнаяфункция неизвестна), либо вычисляются по заданной функции f(x).Выражение, определяющее функцию, вводится с клавиатуры и должно соответствоватьправилам записи выражений в MATLAB
ü   Вводданных (xi,yi, i=0, n) из файла
·         Решитьсистему уравнений для определения коэффициентов многочлена P(x)
·         Построитьграфики исходной таблично заданной функции и многочлена P(x)
·         Еслиисходные данные заданы в виде функции f(x), построить график погрешностиинтерполяции /f(x) – P(x)/. Рассчитать максимальное по модулю значениепогрешности интерполяции на заданном промежутке.
Привыполнении последнего пункта на отрезке [x0, xn] взять не менее 500точек для проведения расчетов

Задание №2
Интерполяциясплайнами
Цельработы:
Необходимосоставить программу вычисления коэффициентов и построения сплайн-функции S(x), «склеенной» из кусковмногочленов 3‑го порядка Si(x), которые имеют специальнуюформу записи:
/>,
функция Si(x) определена на отрезке [xi-1, xi],
/>
/>
 
Требованияк программе
Привыполнении данной работы необходимо:
·         Задатьграницы отрезка [x0, xn], на котором строится сплайн-функция S(x)
·         Задатьn – количество отрезков интерполяции, на каждом из которых строится кубическиймногочлен Si(x).
·         Примечание:x0, xn, n вводятся с клавиатуры.
·         Организоватьввод исходных данных (x, y) (количество пар точек (xi, yi), по которым строитсясплайн-функция S(x), n1=n+1), предусмотрев:
ü   Вводпроизвольно расположенных узлов xi, i=0, n с клавиатуры
ü   Расчетузлов xi, i=0, n, соответствующих равномерному расположению аргумента x наотрезке [x0, xn]
ü   В пп. 1,2значения yi, i=0, n либо вводятся с клавиатуры (если исходная функциянеизвестна), либо вычисляются по заданной функции f(x). Выражение, определяющеефункцию, вводится с клавиатуры и должно соответствовать правилам записивыражений в MATLAB
ü   Вводданных (xi, yi, i=0, n) из файла
·         Длякраевых условий 1–3 рассчитать коэффициенты di кубических сплайнов
ü   S1''(x0)=0,S3''(x3)=0
ü   S1'(x0)=f '(x0), S3'(x3)=f '(x3)
ü   S1''(x0)=f «(x0), S3''(x0)=f «(x3)
·         Дляопределения коэффициентов естественного кубического сплайна (краевые условия 1)необходимо решить следующую систему уравнений:
·         
/>
Коэффициенты σ0=0,σn =0
·         Построитьграфики исходной функции и сплайн-функций для всех трех типов краевых условий.
·         Построитьграфики функций погрешности сплайн-интерполяции f(x) – S(x) для всех трехтипов краевых условий.
·         Рассчитатьмаксимальные по модулю значения погрешности интерполяции на заданном промежутке[x0, xn] для каждого вида сплайна.
Примечание:
В пакете MATLAB индексы одномерных идвумерных массивов начинаются с 1, а не с 0. Учесть это при составлениипрограммы.

Задание №3
Аппроксимацияфункции методом наименьших квадратов (МНК).
Данноезадание подразумевает нахождение для некоторой совокупности данныхаппроксимирующей функции (многочлена степени m), построенной методомнаименьших квадратов (МНК).
Цельработы:
Необходимосоставить программу нахождения коэффициентов многочлена φ(x)=a+a1*x+… an*xm методом наименьшихквадратов.
Рекомендациипо выполнению работы:
Пусть,например, имеется следующая совокупность данных:
хi 1,2 1,4 1,6 1,8 2,0 2,2 2,4 2,6 2,8 3,0
yi 8,3893 8,6251 8,9286 8,9703 9,1731 9,1784 8,8424 8,7145 8,3077 7,9611
Поискнеобходимых коэффициентов осуществляется следующим образом:
/>
где    n– количество точек (x, y),
m – степень искомого многочлена,
a, a1, …, am – искомые коэффициенты (φ(x)=a+a1x+ … +amxm).
Требованияк программе
Привыполнении данной работы необходимо:
·         Задатьграницы отрезка [x1, xn], на котором строится аппроксимирующая функция φ(x)=a0+a1*x+…an * xm
·         Задатьm – степень многочлена
·         Примечание:x1, xn, m вводятся с клавиатуры.
·         Дляполучения исходных данных (x, y), по которым строится аппроксимирующая функция φ(x)=a0+a1*x+…an* xm предусмотреть:
ü   Вводпроизвольно расположенных узлов xi, i=1, n с клавиатуры
ü   Расчетузлов xi, i=1, n, соответствующих равномерному расположению аргумента x наотрезке [x1, xn]
ü   В пп. 1,2значения yi, i=1, n либо вводятся с клавиатуры (если исходная функциянеизвестна), либо вычисляются по заданной функции f(x). Выражение, определяющеефункцию, вводится с клавиатуры и должно соответствовать правилам записивыражений в MATLAB
ü   Вводданных (xi, yi, i=1, n) из файла
·         Решитьсистему уравнений для определения коэффициентов многочлена φ(x)
·         Построитьграфики исходной таблично заданной функции и многочлена φ(x)
·         Еслиисходные данные заданы в виде функции f(x), построить график погрешностиинтерполяции /f(x) – φ(x)/. Рассчитать максимальное по модулю значениепогрешности интерполяции на заданном промежутке.
Привыполнении последнего пункта на отрезке [x1, xn] взять не менее 500точек для проведения расчетов

Требованияк оформлению лабораторной работы
 
Отчет долженсодержать:
1.        Постановкузадачи
2.        Текстпрограммы
3.        Результатытестирования
Примечаниетексты программ должны быть снабжены комментариями.

Список литературы
 
1.  Ануфриев И.Е. СамоучительMatlab 5.3/6.x – СПб.: БХВ-Петербург,2003. – 736 с.: ил.
2.  В.П. ДьяконовMATLAB 6.5 SPI/7 + Simulink 5/6 в математике имоделировании. Серия «Библиотека профессионала». – М.: СОЛОН-Пресс, 2005. – 576 с.:ил.
3.  Ануфриев И.Е.,Смирнов А.Б., Смирнова Е.Н.   MathLab 7. – СПб.: БХВ-Петербург, 2005.– 1104 с.: ил.


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Особенности тонкого строения первостепенных маховых перьев соколиных (Falconidae)
Реферат Моделирование электропривода насосной станции
Реферат Гражданско правовое регулирование наследования по завещанию
Реферат English Essay Research Paper Analysis of the
Реферат Організаційний механізм управління діяльністю підприємства та шляхи його удосконалення на фармацевтичному
Реферат Much Ado About Nothing By William Shakespeare
Реферат Сталинские репрссии в Хакасии
Реферат The Odyssey And The Pearl Loyalty Essay
Реферат Описание лиственных пород
Реферат Лекции по курсу Культурология
Реферат Развитие и укрепление феодального хозяйства белорусских земель во второй половине XIII - первой половине XVI ст.
Реферат Работа над изобразительными средствами языка в аспекте развития речи учащихся пятых классов на уроках
Реферат «Куратор групи: партнер, наставник, лідер?!»
Реферат The Raven Essay Research Paper In The
Реферат Трагедия Григория Мелехова в романе М.Шолохова Тихий Дон