• Регистрация
Surok
Surok 0.00
н/д

КР Обработка данных и математическое моделирование в прикладных пакетах

19.10.2019

Курсовая работа

Оглавление

1. Цели и задачи курсовой работы

2. Исходные данные

3. Постановка задачи курсовой работы

4. Выполнение заданий

Задача 1. Оценка основных показателей информации

Вывод по задаче 1:

Задача 2. Шифрование заданной фразы

Вывод по задаче 2:

Задача 3. Математическое моделирование фразы

Вывод по задаче 3:

5. Заключение

6. Используемая литература

 

1. Цели и задачи курсовой работы

Целью курсовой работы является развитие практических навыков работы в системах Mathcad и MATLAB + Simulink, как наиболее широко используемых в области телекоммуникаций.

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

 

2. Исходные данные

Задана фраза для цифровой обработки S =” Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.” 

Задан алгоритм шифрования фразы S: к коду фразы добавляется код гаммы G=dkbnmecpasqz. 

 

3. Постановка задачи курсовой работы

Задача 1. Оценка основных показателей информации.

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

− информационный объем одного символа; 

− объем данных сообщения; 

− коэффициент информативности; 

− вероятности появления символов; 

− энтропию сообщения; 

− избыточность сообщения. 

Целью данного пункта задания является осмысление показателей информации и освоение операций над массивами данных в математических средах. 

 

Задача 2. Шифрование заданной фразы

В системе MATLAB + Simulink разработать программы шифрования и расшифрования заданной фразы по заданному алгоритму и провести моделирование этих процессов. 

Целью данного пункта задания является освоение приемов программирования и создания пользовательских блоков в системе MATLAB + Simulink на примере одного из методов защиты информации. 

 

Задача 3. Математическое моделирование

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

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

4. Выполнение заданий

Задача 1. Оценка основных показателей информации

Задаю строку S в зависимости с вариантом. Рассчитываю количество символов в строке, количество информации на 1 двоичный символ, объем данных и количество информации заданной строки, коэффициент информативности (рис.1.1).

Объем данных V в сообщении измеряется количеством разрядов в этом сообщении и измеряется в битах или байтах. 

Количество информации I в сообщении определяется количеством новых знаний, получаемых пользователем, и является величиной относительной. Количество информации оценивается изменением (уменьшением) неопределенности состояния исследуемой величины и измеряется в битах или байтах. 

Коэффициент информативности (содержательность) определяется отношением: Y=I/V

Рассчитываю энтропию сообщения заданной строки и избыточности сообщения. Для этого задаю вектор символов- Sim и вектор их повторяемости-  k, рассчитываю вероятность появления символов в строке-вектор p, статистические показатели: максимальное, минимальное, среднее значение p и длину этого вектора (рис.1.2).

Энтропия (степень неопределенности) рассматриваемой системы (сообщения S) определяется по формуле Шеннона:

где     Pi – вероятность появления i-го символа в сообщении, 

N – число символов в сообщении. 

Вероятность Pi появления символов в сообщении S определяется отношением k – количества символов в сообщении к длине N самого сообщения: 

Pi=ki/N.

Избыточность сообщения можно определить по формуле:

                                              

где   H – энтропия системы;

M – число символов в некоторой системе.

 

Результаты расчета рассмотренных показателей сообщения S приведены на рис. 1.1 и 1.2 соответственно.

 

 

>> % Заданная фраза;

>> S='Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.';

>> % Количество символов в строке S;

>> N=length(S)

N =87

>> %Расчет количества информации;

>> m=2;        %Основание СС

>> q=16;       %Число разрядов на 1 символ

>> M=2^16      %Количество возможных двоичных комбинаций

M =65536

>> Ic=log(M)/log(2) % Количество информации на один символ

Ic =16

>> %Расчет объема данных заданной фразы S в битах

>> V=q*N

V =1392

>> % Количество символов известных данных

>> S1='Отучись обижаться';

>> a=length(S1)

a =17

>> % Количество символов не известной информации

>> b=N-a

b =70

>> % Коэффициент информативности в %

>> Y=Ic*b/V*100

Y =80.4598

 

Рис. 1.1. Оценка показателей информации

 

 

>> % Расчет количества повторений символом в строке

>> Sim=',.НОабвгджзийлнопрстучыьюя';

>> % Количество повторений

>> k=[1 3 1 2 4 3 2 2 4 2 1 2 6 1 2 3 8 1 2 7 5 2 2 3 2 3 2];

>> sum(k)

ans =

    76

>> % Вероятность появления символ в фразе S

>> p=k/N

p =

0.0115   0.0345   0.0115   0.0230   0.0460    0.0345    0.0230    0.0230    0.0460    0.0230    0.0115    0.0230

0.0690   0.0115   0.0230   0.0345   0.0920    0.0115    0.0230    0.0805    0.0575    0.0230    0.0230    0.0345

0.0230    0.0345    0.0230

>> % Энтропия заданной фразы

>>  H=-sum(p.*(log(p)/log(2)))

H =

    4.1048

>> % Избыточность фразы в %

>> R=(1-H/(log(N)/log(2)))*100

R =

   36.289

Рис. 1.2. Расчет энтропии и избыточности сообщения

>> X=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27];

>> plot(bar(X,k),'b');

>> title('X,k');

Рис. 1.3. Диаграмма частоты повторения символов в фразе.

 

С помощью формулы вероятности мы видим, что символ « » и «о» повторяется чаще других, а символы «Н», «ч», «а», «й», «у», «п», «д», «л», «ж», «д», «я», «ы» – реже.

Вывод по задаче 1:

Выполнив это задание, я понял, что каждая фраза несет в себе долю информативности (энтропии) и избыточности. Как видно из расчетов заданная фраза содержит большую избыточность (36,289%), связанную с небольшой длительностью фразы и использованию кодировки символов двойной точности (q=16).

Задача 2. Шифрование заданной фразы

В командной строке системы MATLAB задали строковую переменную S заданной фразы. Далее задали в командной строке гамму G в виде вектора, путем многократного циклического повторения символом до длительности, равной длительности фразы. Этот вектор имеет длину, равную длине вектора S. Для кодирования фразы преобразуем строковую переменную и гамму в массивы кодов. 

>> S='Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.';

>>G='dkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkb';

>> CS=double(S)

CS =

  Columns 1 through 8

        1054        1090        1091        1095       1080        1089        1100          32

  Columns 9 through 16

        1086        1073        1080        1078       1072        1090        1100        1089

  Columns 17 through 24

        1103          46          32        1054          1073        1080        1076        1099

  Columns 25 through 32

          32        1086        1090          32          1075        1086        1088        1076

  Columns 33 through 40

        1099        1085        1080         46            32        1053        1077             32

  Columns 41 through 48

        1079        1072        1089        1090       1091        1087        1072        1081

  Columns 49 through 56

          32        1079        1072           32          1089        1074        1086        1102

  Columns 57 through 64

           32        1075        1086        1088       1076        1099        1085        1102

  Columns 65 through 72

          44             32        1085        1086            32        1073        1083        1102

  Columns 73 through 80

        1076        1080          32        1089         1083        1086        1074        1086

  Columns 81 through 87

          32        1095        1077        1089      1090        1080          46

>> CG=double(G)

CG =

  Columns 1 through 16

   100   107   98  110   109   101  99   112   97  115   113   122   100   107   98  110

  Columns 17 through 32

   109   101   99  112   97  115   113   122   100   107   98  110   109   101   99  112

  Columns 33 through 48

  97   115   113   122   100   107   98  110    109   101  99   112  97   115   113   122

  Columns 49 through 64

   100   107   98  110   109   101   99   112   97  115   113   122   100   107   98  110

  Columns 65 through 80

   109   101   99  112   97  115   113   122   100   107   98  110   109   101   99  112

  Columns 81 through 87

    97   115   113   122   100   107   98

 

Выполняю шифрование полученного вектора кодов строки S: заменяю код строки в другой код (прибавляю к коду строки код гаммы).

 

>> CK=mod(CS+CG,1104)

CK =

  Columns 1 through 16

    50    93    85   101    85    86    95   144    79    84    89    96    68    93    94    95

  Columns 17 through 32

   108   147   131    62   66    91    85   117   132    89    84   142    80    83    83    84

  Columns 33 through 48   

     92    96    89   168   132    56    71   142     84    69    84    98    84    98    81    99

  Columns 49 through 64 

   132    82    66   142    94    71   81   110   129    86    95   106   72   102    79   108

  Columns 65 through 80

   153   133    80    94   129    84    92   120    72    83   130    95    88    83    69    94

  Columns 81 through 87

   129   106    86   107    86    83   144

 

Получаю шифрограмму символов.

>> CH=char(CK)

CH =

'2]UeUV_OTY`D]^_l“ƒ>B[Uu„YTŽPSST\`Y¨„8GŽTETbTbQc„RBŽ^GQnV_jHfOl™…P^T\xHS‚_XSE^jVkVS'

 

Для проверки результата шифрования выполняю действия с вектором CH по расшифрованию шифрограммы с целью восстановления исходной фразы:

Преобразовываю шифрограмму в код:

>> CD=double(CH)

CD =

  Columns 1 through 16

    50    93    85   101    85    86    95   144    79    84    89    96    68    93    94    95

  Columns 17 through 32

   108   147   131    62    66    91   85   117   132    89    84   142    80    83    83    84

  Columns 33 through 48

    92    96    89   168   132    56    71   142    84    69    84    98    84    98    81    99

  Columns 49 through 64

   132    82    66   142    94   71   81   110   129    86    95   106   72   102    79   108

  Columns 65 through 80

   153   133    80    94   129    84    92   120    72    83   130    95    88    83    69    94

  Columns 81 through 87

   129   106    86   107    86    83   144

 

Восстанавливаю код строки (отнимаю код гаммы):

>> D=mod(CD-CG,1104)

D =

  Columns 1 through 8

        1054        1090        1091        1095       1080        1089        1100          32

  Columns 9 through 16

        1086        1073        1080        1078       1072        1090        1100        1089

  Columns 17 through 24

        1103            46            32        1054        1073        1080        1076        1099

  Columns 25 through 32

            32        1086        1090            32         1075       1086        1088        1076

  Columns 33 through 40

        1099        1085        1080           46              32        1053        1077           32

  Columns 41 through 48

        1079        1072        1089          1090       1091        1087        1072        1081

  Columns 49 through 56

           32        1079        1072             32          1089        1074        1086        1102

  Columns 57 through 64

           32         1075        1086         1088        1076         1099        1085        1102

  Columns 65 through 72

           44             32        1085        1086             32        1073        1083        1102

  Columns 73 through 80

        1076        1080            32        1089         1083        1086        1074        1086

  Columns 81 through 87

            32        1095        1077        1089        1090        1080             46

 

Восстанавливаю символы в текстовой фразе:

 

>> T=char(D)

T =

    'Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.'

 

Вывод: Результат восстановления вектора T полностью совпал с исходной строкой S. Я считаю, что это не самый удобный метод шифрования, так как при повторении шифровки нужно заново вбивать фразы, что занимает время, однако все действия по преобразованию строк представлены довольно наглядно.

Произведем шифрование фразы с использованием программных модулей. С этой целью создаю два М-файла-функции. Первая функция преобразовывает массив кодов заданной фразы в шифрограмму (рис.2.1), а вторая – производит  расшифрование шифрограммы (рис.2.2).

Рис. 2.1. М-файл-функция, реализующая шифрование строки S методом гаммирования.

G='dkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkbnmecpasqzdkb';

>> S='Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.';

Вызываю модуль шифрования относительно вектора исходной строки S.

>> CK=SC(S,G);

>> CH=char(CK)

CH =

'2]UeUV_OTY`D]^_l“ƒ>B[Uu„YTŽPSST\`Y¨„8GŽTETbTbQc„RBŽ^GQnV_jHfOl™…P^T\xHS‚_XSE^jVkVS'

 

Рис. 2.2. М-файл-функция, реализующая дешифрование строки S методом гаммирования

Вызываю модуль шифрования относительно вектора шифрограммы CH.

>> D=DSC(CH,G);

>> T=char(D)

T =  'Отучись обижаться. Обиды от гордыни. Не заступай за свою гордыню, но блюди слово чести.

Вывод: Как видно, результат восстановления текста T полностью совпал с исходной фразой S, что говорит о правильной работоспособности модулей. С помощью М-файла можно ускорить работу с программой, так как не нужно тратить время на заполнение модулей. 

Для дальнейшего исследования фразы с помощью пакета расширения Simulink создаю модель, реализующую процессы шифрования и дешифрования методом гаммирования (рис.2.3).

При этом использую как стандартные блоки Simulink, так и собственно созданные блоки для моделирования процессов шифрования и расшифрования, работающие с цифровыми данными.

Блок From Workspace выполняет функции преобразования строковой фразы в соответствующий ей код и вызова вектора данных кода из рабочей области в модель для дальнейшего шифрования.

Блок Interpreted MATLAB Function выполняет функцию обработки цифровых данных по заданному алгоритму, реализуемому программным способом.

Блок To Workspace выполняет функцию передачи кодов шифрограммы в рабочую область для считывания шифрограммы в командной строке.

Аналогично работает приемная часть модели.

Устанавливаю для каждого блока модели соответствующие свойства, которые приведены в таблице 2.1.

 

Таблица 2.1. Значения параметров блоков цифрового устройства

Название и назначение блоков Размещение в браузере Параметры блоков
Источники: 
From Workspace, 
From Workspace1,
From Workspace2 
Simulink / Sources 
 
Data: CS: Sample time: 0
Data: CG: Sample time: 0  
Data: CD: Sample time: 0 
Приемники: 
To Workspace, 
To Workspace1 
Simulink / Sinks 
 
Variable name: CK 
Variable name: D 
Блоки
Interpreted MATLAB Fcn, 
Interpreted MATLAB Fcn1 
Simulink / User-Defined Functions 
 
MATLAB function: SC(S,G)
MATLAB function: DSС(CH,G)
Регистраторы 
Display(1-4) 
 
Simulink / Sinks 
 
По умолчанию 
 
Блок диаграммы: 
Floating Bar Plot 
Simulink Extras/ Additional Sinks 
 
Y-Limits установить min и max значения кодов Cyr

 

Полученная и настроенная блочно-имитационная модель процессов шифрования и расшифрования приведена на рис. 2.3

 2.3. Модель шифрования и расшифрования строки методом гаммирования

Для удобства визуализации исходной фразы, гаммы, шифрограммы и восстановленной фразы я использовал блок Floating Bar Plot (рис.2.4 – 2.7).

Рис.  2.4. Гистограмма кодов символов исходной фразы

Рис.  2.5. Гистограмма кодов символов гаммы

Рис.  2.6. Гистограмма кодов символов шифрограммы

Рис.  2.7. Гистограмма кодов символов восстановленной фразы

 

Для сравнения процессов реализации шифрования и расшифрования фразы в двух математических пакетах выполняю шифрование и дешифрование данных в системе Mathcad(рис.2.8). Для этого преобразовываю строковую переменную и гамму в векторы кодов. Разрабатываю, пишу и отлаживаю модули SC, реализующий процесс шифрования строки, и DT, реализующий процесс восстановления строки.

Рис.2.8. Шифрование и дешифрование заданной фразы

Вывод по задаче 2:

 Выполнив шифрование и дешифрование заданной строки, я увидел, что написанные мной программы в Mathcad и MATLAB правильные, так как восстановленная фраза полностью совпадает с исходной. Самыми удобными программами для шифрования и дешифрования заданной строки я считаю Mathcad, так как синтаксис более понятен при математических вычислениях, а MATLABболее удобен при моделировании благодаря блокам Simulink и использованию при необходимости М-файлов.

 

Задача 3. Математическое моделирование фразы

Представление совокупности данных некоторой функцией y(x) называется регрессией. Ее задача заключается в получении параметров этой функции такими, чтобы функция приближала «облако» исходных точек, заданных векторами VX и VY, с наименьшей среднеквадратичной погрешностью. Сама линия регрессии проходит в «облаке» исходных точек, векторов VX и VY, с максимальным среднеквадратичным приближением к ним. Известны следующие виды регрессии: 

1. Линейная (отрезок прямой линии), 

2. Полиномиальная (полином произвольной степени), 

3. Линейная общего вида (линейная сумма произвольных функций), 

4. Нелинейная общего вида (произвольная функция).

В данной работе требуются первые три вида регрессии.

 

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

 

3.1. Формирование выборки данных для исследования

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

Str= «Несчитайтого». 

Формирую два вектора VX, содержащий коды выборки строки Str, и VY, содержащий порядковые номера этих кодов в выборочной совокупности. (рис.3.1).

Рис.3.1. Программа формирования векторов выборки данных\

 

3.2. Линейная регрессия

При линейной регрессии функция y(x) имеет вид 

y(x)=a·x+b 

и описывает отрезок прямой. 

Я нахожу значения a и b с помощью встроенных функций:

slope(VX,VY) – возвращает значение параметра a – наклон линии регрессии (угловой коэффициент линии регрессии), 

intercept(VX,VY) – возвращает параметр b – смещение линии регрессии по вертикали (свободный член регрессии).

Нахожу по формуле коэффициент детерминации (критерий точности вычисления закона регрессии).

Строю графики VY(VX) и LY(x) в одной системе координат. (рис.3.2).

 

 

Рис.3.2. Линейная регрессия для сформированной выборки

 

Вывод: Если вывести расчетные значения LY(x) и выборку данных VY и сопоставить их, то можно увидеть, что в большинстве точек они значительно отличаются друг от друга (рис.3.3). 

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

Поэтому линейный закон для данной выборки VY только отражает тенденцию изменения ее данных для нашего случая.

Рис.3.3. Сопоставление векторов LY(x) и VY

Математическая модель выборки имеет следующий вид:

 

 

3.3.Полиномиальная регрессия

При полиномиальной регрессии функция y(x) имеет вид:

 

y(x)=an*xn+an-1*xn-1+…+a2*x2+a1*x+a0

 

Я нахожу значения z и P(x) с помощью встроенных функций:

regress(VX,VY,n), которая возвращает вектор VS, запрашиваемый функцией interp(VS,VX,VY,x) и содержащий коэффициенты полинома n–й степени.

Вычисляю коэффициенты полинома с помощью функции submatrix() – часть матрицы. Нахожу по формуле коэффициент детерминации.

Строю графики VY(VX) и P(x) в одной системе координат одного шаблона для их сопоставления (рис.3.4).

 

 

Рис.3.4. Полиномиальная регрессия

 

Вывод: Если вывести значения векторов P(x) и выборки данных VY и сопоставить их (рис.3.5), то можно увидеть полное их соответствие. 

Следовательно, для данной выборки данных полученный закон полиномиальной регрессии может быть применен в качестве получения математической модели выборки данных. Так же я считаю, что полученной выражение очень громоздко, из-за высокой степени полинома. 

Рис.3.5. Сопоставление векторов P(x) и VY

Математическая модель выборки с учетом использования полиноминальной регрессии имеет следующий вид:

 

3.4.Линейная регрессия общего вида

В линейной регрессии общего вида заданная выборка данных приближается к функции y(x) вида: 

 

y(x)=F(x,K1,K2,…Kn)=K1*F1(x)+K2*F2(x)+…+Kn*Fn(x)

 

Таким образом, функция регрессии является линейной комбинацией нескольких функций F1(x), F2(x),…, Fn(x).

Задаю вектор F, содержащий функции в символьном виде.

Для реализации линейной регрессии общего вида использую функцию linfit(VX,VY, F), которая возвращает вектор коэффициентов К линейной регрессии общего вида, при котором среднеквадратичная погрешность приближения «облака» исходных данных, координаты которых хранятся в векторах VX и VY, оказывается минимальной.

Нахожу по формуле коэффициент детерминации.

Строю графики VY(VX) и LA(x) в одной системе координат одного шаблона (рис.3.6).

Вывод: Если вывести значения векторов LA(x) и выборки данных VY и сопоставить их (рис.3.7), то можно увидеть различие в некоторых точках. 

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

Рис.3.7. Сопоставление векторов LA(x) и VY

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

3.5. Восстановление выборки из фразы

Рассчитанные по формулам P(x) и LA(x) коды сначала с помощью функции round() округляю до целых значений, затем преобразовываются в символы строки. И сравниваются с исходной выборкой. Составляю программу подсчета количества совпадений символов восстановленной выборки с заданной (рис.3.7).

Рис.3.7. Восстановление заданной строки Str.

Вывод по задаче 3:

Как показали исследования получения математической модели заданной выборки, с помощью регрессионного анализа, лучший адекватный результат получен при использовании полиномиальной регрессии с высокой степенью полинома n=11. Так же, я считаю, что данный метод не совсем удобен из-за громоздкой записи выражения самого закона, ведь это сильно затруднит работу по шифрованию данных. 

5. Заключение

Выполнив данную курсовую работу, я провел сравнительный анализ двух математических пакетов: MATLAB+Simulink и Mathcad.

MATLAB пакет прикладных программ для решения задач технических вычислений и одноимённый язык программирования, используемый в этом пакете.

Язык MATLAB является высокоуровневым интерпретируемым языком программирования, включающим основанные на матрицах структуры данных, широкий спектр функций (несколько тысяч для различных предметных областей), интегрированную среду разработки, объектно-ориентированные возможности и интерфейсы к программам, написанным на других языках программирования.

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

− матрицы и линейная алгебра 

− многочлены и интерполяция 

− математическая статистика и анализ данных 

− обработка данных 

дифференциальные уравнения 

− разреженные матрицы 

− целочисленная арифметика.

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

В системе MATLAB также существуют широкие возможности для программирования. Ее библиотека является объектной и содержит свыше 300 процедур обработки данных на языке C. Язык программирования в системе MATLAB близок к широко распространенным языкам Pascal, Delphi и Basic.

В системе MATLAB есть возможность создания собственных функций в виде М-файлов, которые дополняют стандартный набор математических операций.

Кроме того, система поддерживает двумерную и трехмерную графику (в отдельном окне).

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

Поскольку ее язык оптимизирован для работы с матрицами, в результате обеспечивается простота использования, высокая скорость и экономичность проведения операций над изображениями.

Из недостатков системы можно отметить невысокую интегрированность среды (очень много окон, с которыми лучше работать на двух мониторах), не очень внятную справочную систему и специфический редактор кода MATLAB-программ.

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

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

Для небольшого объема вычислений Mathcad идеален – здесь все можно проделать очень быстро и эффективно, а затем оформить работу в привычном виде.

Mathcad содержит сотни операторов и встроенных функций для решения различных технических задач.

Среди его возможностей можно выделить:

− решение дифференциальных уравнений, в том числе и численными методами

− построение двумерных и трёхмерных графиков функций (в разных системах координат, контурные, векторные и т. д.)

− возможен импорт графики из других программ 

− встроенные справочники по предметным областям

− возможна анимация

− использование греческого алфавита как в уравнениях, так и в тексте

− выполнение вычислений в символьном режиме

− выполнение операций с векторами и матрицами 

аппроксимация кривых

− выполнение подпрограмм

− поиск корней многочленов и функций

− проведение статистических расчётов и работа с распределением вероятностей

− поиск собственных чисел и векторов

− интеграция с САПР - системами, использование результатов вычислений в качестве управляющих параметров.

− вычисления с единицами измерения

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

Из недостатков этого математического пакета можно отметить то, что он является интерпретатором, и его возможности программирования ограничены.

Главным преимуществом системы MATLAB является то, что ее используют для написания научных работ и проведения экспериментальных исследований, потому что она имеет обширные возможности работы с изображениями, высокую скорость обработки данных, широкий спектр возможностей для программирования, также в нее встроена система имитационного моделирования блочно организованных систем Simulink. Достоинствами математического пакета Mathcad можно считать простоту использования, доступность для широкой аудитории пользователей. 

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

6. Используемая литература

Основная

1. Алексеев А. П. Стеганографические и криптографические методы защиты информации: учеб. пособие по дисциплине "Информатика" / А. П. Алексеев, В. В. Орлов; ПГУ-ТИ. – Самара: ИУНЛ ПГУТИ, 2010. – 332 с (Учебное пособие). 

2. Дьяконов, В. П. MATLAB и SIMULINK для радиоинженеров /Дьяконов, В. П. – М.: ДМК, 2011, 976 с. 

3. Дьяконов, В. П. MATLAB 6.5 SP1/7 + Simulink 5/6 в математике и моделировании / Дьяконов, В. П. – М.: СОЛОН-Пресс, 2005. – 576 с. – (Библиотека профессионала) 

4. Дьяконов, В. ПMATLAB 6.5 SP1/7+ Simulink 5/6. Основы применения / Дьяконов, В. П. – М.: СОЛОН-Пресс, 2005. – 800 с. – (Библиотека профессионала). 

5. Дьяконов, В. П. Mathcad 11/12/13 в математике: справочник / Дьяконов В. П. – М.: Горячая линия-Телеком, 2007 – 958 с. 

6. Ивановский Р. И. Теория вероятностей и математическая статистика. Основы, прикладные аспекты с примерами и задачами в среде Mathcad: учебное пособие для вузов. СПб.: БХВ-Петербург, 2008.-528 с 

7. Кирьянов, Д. В. Mathcad 15/Mathcad Prime 1.0 / Кирьянов, Д. В. – СПб.: БХВ-Петербург, 2012. – 428 с. – (В подлиннике). 

8. Кирьянов, Д. В. Mathcad 13 / Кирьянов, Д. В. – СПб.: БХВ-Петербург, 2006. – 608 с. 

9. Макаров, Е. Г. Инженерные расчеты в Mathcad 14 / Макаров, Е. Г. – СПб. : Питер, 2007. – 592 с. 

10. Макаров, Е. Г. Инженерные расчеты в Mathcad 15  : учеб. курс / Макаров, Е. Г. - СПб.: Питер, 2011. – 400 с. 

11. Стефанова И. А. Программирование в системе MATLAB: задания и методические указания к лаб. работам по информатике и программированию / Стефанова И. А. ; ПГУТИ, Кафедра ИВТ. – Самара: ИУНЛ ПГУТИ, 2014. – 66 с. 

12. Стефанова И. А. Применение MATLAB+SIMULINK в технике связи: задания и методические указания к лаб. работам по информатике / Стефанова И. А.; ПГУТИ, Кафедра ИВТ. – Самара: ИУНЛ ПГУТИ, 2015. – 72 с. 

13. Стефанова И. А. Методы обработки данных в системе MATCAD: Методическое пособие / Стефанова И. А.; ПГУТИ, Кафедра ИВТ – Самара: ИУНЛ ПГУТИ, 2015. – 51 с. 

14. Стефанова И. А. Программирование в системе MATCAD: Методическое пособие / Стефанова И. А.; ПГУТИ, Кафедра ИВТ. – Самара: ИУНЛ ПГУТИ, 2015. – 51 с. 

15. Стефанова И. А. Обработка и данных и моделирование в математических пакетах: Учебно-методическое пособие по дисциплине «Информатика»; Самара 2016.

 

Дополнительная

16. Беспалов, Е. С. Simulink–модели радиотехнических устройств: учеб. пособие / Беспалов, Е. С., Мусянков, М. И., Пирхавка, А. П.; Московский государственный институт радиотехники, электроники и автоматики (технический университет), ГОУ ВПО МИРЭА. – М.: [Б. и.], 2010. - 56 с. 

17. Выгодский, М. Я. Справочник по высшей математике / Выгодский, М. Я. - М.: АСТ, 2008. – 991 с. 

18. Очков, В. Ф. Mathcad 12 для студентов и инженеров / Очков, В. Ф. –СПб.: БХВ-Петербург, 2005. – 464 с. 

19. Черных, И. В. Моделирование электротехнических устройств в Matlab, SimPowerSystems и Simulink./И. В. Черных – М.: ДМК, 2014, 296 с.

20. Акчурин, Э. А. Программирование в системе MATLAB: метод. указания к лабораторным работам / Э. А. Акчурин. – Самара: ПГАТИ, 2004 – .Ч.1: Использование VFTLAB и Simulink / Э. А. Акчурин. – 51 с. 

21. http://sapr-journal.ru/uroki-mathcad – электронный ресурс. Уроки по работе в Mathcad. 

22. http://physics.herzen.spb.ru/library/03/02/mcad_progs.pdf – электронный ресурс. Программирование в математическом пакете Mathcad. 

23. http://edu.dvgups.ru/METDOC/ENF/PRMATEM/INFORMAT/METOD/KRIPTOGR_MET/Kom_1.htm – электронный ресурс. Знакомство с криптографическими методами защиты информации.

Теги

    19.10.2019

    Комментарии

    • Sancho
      Sancho+49.25
      5.08.2020 14:04

      Ссылка, которую Вы указали: http://physics.herzen.spb.ru/library/03/02/mcad_progs.pdf, не найдена :(