Автор: Пользователь скрыл имя, 04 Декабря 2010 в 14:00, лабораторная работа
ЦЕЛЬ РАБОТЫ: Приобрести начальные навыки работы в среде Matlab. Изучить команды управления средой Matlab. Изучить служебные переменные и константы.
ЦЕЛЬ
РАБОТЫ: Приобрести начальные навыки
работы в среде Matlab. Изучить команды управления
средой Matlab. Изучить служебные переменные
и константы.
ЗАДАНИЕ
НА ЛАБОРАТОРНУЮ РАБОТУ
1. Управление рабочей средой
1.1. Произвольно задать несколько переменных. Выполнить несколько простых математических операций с заданными переменными и без них. Результат в протокол. Привести список служебных переменных и констант, их значения (там, где это возможно), объяснить их предназначение. Какие служебных переменные и констант можно использовать в вычислениях, а какие нет? В протоколе привести примеры с пояснениями.
1.2. Выполнить удаление некоторых переменных, а потом полную очистку, выполните очистку консоли. В протоколе привести команды с описанием, которые мы используем. Какие еще служебные команды для управлении рабочей областью мы знаем?
1.3. Получить справочную информацию по произвольной тригонометриче-
ской функции.
(В протокол).
2. Задание матриц
2.1. Задать произвольную скалярную переменную, вектор и матрицу явным указанием всех элементов.
2.2. Задать произвольную матрицу с помощью одной из команд: (ones, eye, zeros, magiс, rand, randn .). Выборочно модифицировать часть элементов с помощью непосредственного редактировании я рабочей области. В протокол - результаты и описание выбранной команды.
2.4. Выполнить произвольные простые арифметические операции с матрицами. Результат в протокол.
3. Работа с переменными, матрицами и построение графиков
3.1. Исследовать
характеристики связанного контура с
помощью Matlab (данные взять из задания РГР
по курсу «Алгоритмические языки программирования»).
Показать эффективность и быстродействие
работы в Matlab, по сравнению с написанием
на языке С или расчета в автоматизированной
среде расчетов MathCAD.
РАБОТА В ЛАБОРАТОРИИ
1.1. Зададим 2 переменные
>> a=10
a =
10
>> b=5
b =
5
Сделаем пару простых арифметических действий
>> a+b
ans =
15
>> c=a*b
c =
50
Сделаем арифметическое действие без использования переменных
>> 9/3
ans =
3
Список служебных переменных:
1.2 . Удалим некоторые переменные
>> clear с
>> clear a
Сделаем полную очистку переменных
>> clear all
Очистим командное окно
>> clc
Пояснения:
clc – очистка командной строки от выполненных операций
clear – удаление переменных (all - все , переменная – удалить одну переменную)
Управлять
рабочей областью можно через меню Edit.
1.3.
Получим справку о
>> help atan
2.1 Зададим скаляр
>> a=10
a =
10
Зададим матрицу
>> a=[1 3 ; 1 2]
a =
1 3
1 2
Зададим вектор строку
>> b=[1 2 3 4]
b =
1 2 3 4
2.2. Зададим матрицу, у которой по диагонали все единицы, с помощью команды eye
>> eye(4,4)
ans =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Поэкспериментируем с редактированием матрицы
1) Заменим все элементы 2-го столбца на 5-ки
>> ans(:,2)=5
ans =
1 5 0 0
0 5 0 0
0 5 1 0
0 5 0 1
2) Удалим первую строку
>> ans(1,:)=[]
ans =
0 5 0 0
0 5 1 0
0 5 0 1
3) Запишем в 1 строку со второго столбца все 4-ки
>> ans(1,2:end)=4
ans =
1 4 4 4
0 1 0 0
0 0 1 0
0 0 0
1
2.3 Зададим матрицу, путем соединения других
>> a=[ans , ans]
a =
1 4 4 4 1 4 4 4
0 1 0 0 0 1 0 0
0 0 1 0 0 0 1 0
0 0 0
1 0 0
0 1
2.4 Выполним арифметические действия над матрицами
>> b=rand(2,2);
>> a=rand(2,2);
>> a+b
ans =
0.3278 0.5742
1.3963 1.1826
>> a*b
ans =
0.2142 0.2462
0.4497 0.5546
3.1. Исследуем характеристики
связанного контура с помощью Matlab.
% Лабораторная работа №1
%
------------------------------
%
1. Расчет аналитических
% Зададим данные для расчета
Csv=70*10^-9;
L1=500*10^-6;
L2=L1;
C1=8*10^-9;
C2=C1;
R1=11;
R2=R1;
C=C1;
R=R1;
ksi=(-4:0.5:4);
%
Определим общую емкость
Ck=(C*Csv)/(C+Csv);
% Определим общую индуктивность контура
Lk=L1;
% Определим добротность контура
Q=1/R*sqrt(Lk/Ck);
% Найдем резонансную частоту
w0=1/sqrt(Lk*Ck);
% Определим коэффициент связи
Ksv=sqrt(C1^2/(C1+Csv)^2)
% Рассчитаем фактор связи
x=Ksv*Q;
% Выражение расчета АЧХ
ACH=2*x./sqrt((1+x^2-ksi.
% Выражение расчета ФЧХ
FCH=pi/2-atan(2*ksi./(1+
% ------------------------------
% 2. Расчет связанных контуров
%
Найдем граничное значение
ksigr3db=sqrt(x^2+2*x-1);
%Определим полосу пропускания
d2w=w0/Q;
%
Определим коэффициент
Kp=sqrt(200*x/(x^2+2*x-1)
% Определим элемент связи С при котором фактор связи хи=1 и хи=2,41
Csv1=C1*Q/1-C1;
Csv241=C1*Q/2.41-C1;
%
Запишем аналитическое
% Для хи=1 (Граничная АЧХ)
ACH1=2./sqrt((2-ksi.^2).^
% Для хи=2.41 (Критическая АЧХ)
ACH241=4.82./sqrt((6.80-
%
Запишем аналитическое
% Для хи=1 (Граничная ФЧХ)
FCH1=pi/2-atan(2*ksi./(2-
% Для хи=2.41 (Граничная ФЧХ)
FCH241=pi/2-atan(2*ksi./(
% ------------------------------
% 3. Построение графиков (Я сделал на одном, для наглядности)
plot( ksi ,FCH1 , ksi , FCH241 , ksi , FCH)
title('Графики ФЧХ')
xlabel('ksi')
% Графики АЧХ
figure, plot( ksi ,ACH , ksi , ACH1 , ksi , ACH241 )
title('Графики АЧХ')
xlabel('ksi')
Контрольный пример:
Приведем графики ФЧХ, рассчитанные по формулам приведенным выше:
Рисунок 1 – графики ФЧХ
Приведем графики АЧХ, рассчитанные по формулам приведенным выше:
Рисунок
2 – графики АЧХ
ВЫВОД: Я приобрел начальные навыки работы в среде Matlab. Изучил команды управления средой Matlab. Изучил служебные переменные и константы.
Сделал вывод, что использование Matlab гораздо упрощает математические расчеты. По быстродействию не уступает MathCAD.
Информация о работе Лабораторная работа по "Программированию"