Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Летняя прктика программирование Matlab.docx
Скачиваний:
6
Добавлен:
20.09.2019
Размер:
1.16 Mб
Скачать

Задание 6.

Найти минимум функции F( )= ; ; ; ; ; . Для решения использовать метод координатного спуска.

Метод координатного спуска заключается в том, что в качестве направлений траектории спуска от предыдущей точки поиска Х(k-1) к последующей Х(k) принимают поочередно направления координатных осей xi (i = 1, 2, ..., n). После спуска на один шаг по координате x1 переходим к спуску на один шаг по координате х2, а затем двигаемся вдоль координаты х3 и т.д., пока не перейдем в следующую точку поиска Х(1) с координатами Х1(1),X 2(1), ... X.n(1) Движение по траектории спуска от предыдущей точки Х(k-1) к последующей Х(k) следует продолжать до тех пор, пока не будут достигнуты окрестности точки минимума X*, определяемые точностью вычислений.

function zad6 x1=0.1; x2=0.2; x3=0.3; k=0; x=0; while k<10 z=(exp(x1+x2+x3))/(x1*x2*x3); x1=x1+0.25; x2=x2+0.25; x3=x3+0.25; if (z-x)<0.01 k=12; end x=z; end disp('Минимальное значение:') z

Ответ: 44,5502.

Задание 7.

Вычислить интегральный синус Si(x)= = ; ; x=1,2.

Интегральный синус можно вычислить по нижеуказанной формуле,

for i 1-10^7  Si(x)=(sin((i*10^-7)+1))/(1+i*10^-7) fx=fx+si(x)

как сумма от 1 до 10^7 площадей маленьких трапеций аппроксимирующий функций sinx/x на отрезке от 1 до 2 с шагом разбиения 10^-7, fx=0

Но пишем программу по данной в условии задачи формуле:

function zad7 e=10^(-7); y=0; m=1000; k=2; n=0; x=1.2; while k~=0 y=y+(((-1)^n)*(x^(2*n+1))/((2*n+1)*(fact(2*n+1)))); if abs(abs(y)-abs(m))<e k=0; end m=y; n=n+1; end y function z=fact(x1) z=1; while x1>0 z=z*x1; x1=x1-1; end

Цикл  for  оказывается полезным при выполнении повторяющихся похожих действий в том случае, когда их число заранее определено. Обойти это ограничение позволяет более гибкий цикл  while.

Оператор ~ ведет сравнение с учетом как действительной, так и мнимой частей операндов.

Оператор ABS- абсолютные значения.

Каждая программа в MatLab представляет собой функцию и начинается с ключевого слова function, за которым через пробел следует ее название.

Ответ: 1,1080.

Задание 8.

Вычислить интегральный косинус Ci(x)= ; ; x=1,3.

Аналогично по тому же алгоритму, что и в предыдущей программе, прописываем для интегрального косинуса:

function zad8 e=10^(-6); y=0; m=1000; k=2; n=1; x=1.3; while k~=0 y=y+(((-1)^n)*x^(2*n)/(2*n)/fact(2*n)); if abs(abs(y)-abs(m))<e k=0; end m=y; n=n+1; end y=y+0.57722+log(x) function z=fact(x1) z=1; while x1>0 z=z*x1; x1=x1-1; end

Ответ: 0,4457.

Заключение

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

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

  • Матрицы и линейная алгебра — алгебра матриц, линейные уравнения, собственные значения и вектора, сингулярности, факторизация матриц и другие.

  • Многочлены и интерполяция — корни многочленов, операции над многочленами и их дифференцирование, интерполяция и экстраполяция кривых и другие.

  • Математическая статистика и анализ данных — статистические функции, статистическая регрессия, цифровая фильтрация, быстрое преобразование Фурье и другие.

  • Обработка данных — набор специальных функций, включая построение графиков, оптимизацию, поиск нулей, численное интегрирование (в квадратурах) и другие.

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

  • Разреженные матрицы — специальный класс данных пакета MATLAB, использующийся в специализированных приложениях.

  • Целочисленная арифметика — выполнение операций целочисленной арифметики в среде MATLAB.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]