Вычисление значений логарифмических функций на основе разложения в ряд Маклорена
Выражение смешанных функций в виде чисто алгебраических функций при использовании рядов Маклорена. Вычисление значения логарифмических функций. Оценка погрешности вычислений, сравнение их точности с использованием стандартных функций пакета MathCad.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 19.01.2012 |
Размер файла | 619,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования Российской Федерации
Казанский национальный исследовательский технический университет
им. А.Н. Туполева
Кафедра автоматики и управления
Пояснительная записка к курсовой работе
по дисциплине "ИНФОРМАТИКА"
на тему
Вычисление значений логарифмических функций на основе разложения в ряд Маклорена
Выполнил студент группы 3215
Гарипов Р.Р.
Руководитель Зайцев С.В.
Казань, 2011
Задание: Вычисление значений логарифмических функций на основе разложения в ряд Маклорена.
1. Вычислить с заданной точностью значения логарифмических функций ln (1+x) и loga (1+x);
2. Построить графики функций ln (1+x) и loga (1+x) при xЄ [x0,x1];
3. Оценить погрешности вычислений;
4. Провести сравнение точности вычислений логарифмических функций с использованием стандартных функций пакетов MathCad или Matlab (при различных значениях x).
Оглавление
- Введение
- 1. Постановка задачи
- 2. Метод решения
- 3. Блок-схема алгоритма
- 4. Текст программы
- 5. Описание программы
- 6. Контрольный пример
- 7. Исходные данные и результаты счета
- 8. Построение графиков функций
- 9. Оценка погрешности вычислений
- 10. Сравнение точности вычислений показательных функций с использованием стандартных функций (MathCad)
- Заключение и выводы
- Список использованной литературы
- Приложение
Введение
Ряд Маклорена (=Макларена) это ряд Тейлора в окрестности точки а=0. Оказывается, большинство практически встречающихся математических функций могут быть с любой точностью представлены в окрестностях некоторой точки в виде степенных рядов, содержащих степени переменной в порядке возрастания. Например, в окрестности точки х=0:
При использовании рядов, называемых рядами Маклорена (=Макларена), смешанные функции, содержащие, скажем, алгебраические, логарифмические, тригонометрические и экспоненциальные функции, могут быть выражены в виде чисто алгебраических функций. С помощью рядов зачастую можно быстро осуществить дифференцирование и интегрирование.
Теорема Маклорена (ряд Маклорена) имеет вид:
1) ,
где f (x) - функция, имеющая при а=0 производные всех порядков. Rn - остаточный член в ряде Маклорена (=Макларена) (Тейлора при а=0) определяется выражением
2) ,
k-тый коэффициент (при хk) ряда определяется формулой
Логарифмическая функция
Если рассматривать логарифмируемое число как переменную, мы получим логарифмическую функцию y = log ax. Она определена при . Область значений: .
Функция является строго возрастающей при a > 1 и строго убывающей при 0 < a < 1. График любой логарифмической функции проходит через точку (1; 0). Функция непрерывна и неограниченно дифференцируема всюду в своей области определения.
Прямая x = 0 является левой вертикальной асимптотой, поскольку при a > 1 и при 0 < a < 1.
Производная логарифмической функции равна:
,
Натуральные логарифмы
Связь с десятичным логарифмом: .
Как указано выше, для производной натурального логарифма справедлива простая формула:
По этой причине в математических исследованиях преимущественно используют именно натуральные логарифмы. Они нередко появляются при решении дифференциальных уравнений, исследовании статистических зависимостей (например, распределения простых чисел) и т.п.
Неопределенный интеграл от натурального логарифма легко найти интегрированием по частям:
Разложение в ряд Тейлора может быть представлено следующим образом: при справедливо равенство
(1)
В частности,
Формула не имеет большой практической ценности из-за того, что ряд очень медленно сходится и значение x ограничено весьма узким диапазоном. Однако нетрудно получить из неё более удобную формулу:
1. Постановка задачи
Необходимо:
1. Вычислить с заданной точностью значения логарифмических функций ln (1+x) и loga (1+x);
2. Построить графики функций ln (1+x) и loga (1+x) при xЄ [x0,x1];
3. Оценить погрешности вычислений;
4. Провести сравнение точности вычислений логарифмических функций с использованием стандартных функций пакетов MathCad или Matlab (при различных значениях x).
2. Метод решения
о (), . (1)
Формулу (1) называют формулой Маклорена.
Замечание. Пусть функция f (x) бесконечно дифференцируема на интервале ( - l, l). Если эта функция является четной, то ее производная - нечетная функция, и, наоборот, производная нечетной функции - четная функция. Отсюда следует, что для нечетной функции f выполняются условия = 0, k N, а для четной функции f - условия = 0, k N, так как любая непрерывная нечетная функция принимает при x = 0 значение нуль.
Поэтому формулу (1) для бесконечно дифференцируемой четной функции можно записать в виде
о (), . (2)
а для нечетной функции - в виде
о (), . (3)
В формуле (2) остаточный член записан в виде о (), а не в виде о (), так как для четной функции f выполняется условие = 0, и поэтому член многочлена Тейлора, который следует за слагаемым , равен нулю. Аналогично рассматривается вопрос о записи остаточного члена формулы (3).
Так как требуется вычислить функцию ln (1+x), то представим её в виде ряда Маклорена (см. формулу (4)):
Применим интегральную формулу
Разложение может быть осуществлено в соответствии с (30.13) приВ этом случае
(4)
при этом для ряда характерна абсолютная расходимость на промежуткеЕсли, получаем, что представляет собой гармонический расходящийся ряд, прирядпредполагает условную сходимость. Для удобства преобразуем его к виду (5):
(5)
3. Блок-схема алгоритма
4. Текст программы
По представленному в п.3 алгоритму была разработана программа на языке Turbo Pascal. Текст программы с необходимыми комментариями приведен в Приложении 1.
5. Описание программы
5.1 Назначение программы
Программа предназначена для вычисления значений логарифмических функций на основе разложения в ряд Маклорена. Имеет имя ln (1+x) и loga (1+x). Параметры программы приведены ниже.
5.2 Исходные параметры программы
X, B, A, rezult, st_result, rezult_a, st_result_a - переменные вещественного типа
E - переменная вещественного типа, погрешность
A-основание логарифма
st_result-вычисление стандартной функции ln (1+x).
rezult_a-вычисление стандартной функции loga (1+x).
st_result_a - вычисление стандартной функции ln (а).
rezult-значение ln по разложению в ряд.
5.3 Выходные параметры
loga (1+x), ln (1+x). - переменные вещественного типа
5.4 Структура программы
В программе используются следующие действия:
Ввод исходных данных:
X,A.
E-точность вычислений
Расчета функции:
Определение ln (1+x).
Определение loga (1+x).
5.5 Инструкция по использованию программы
После запуска программы на выполнение и выдачи приглашений вводятся исходные параметры (с клавиатуры):
X (в пределах [0.1])
A (основание логарифма)
Е (погрешность вычисления)
После ввода всех параметров, программа выдает результаты расчета, в которых указываются какие параметры выводятся на экран.
6. Контрольный пример
Отладка программы проводилась на следующих значениях:
X=0,4
А=3
Е=0,00001
логарифмическая функция ряд маклорен
7. Исходные данные и результаты счета
1) Вычисление с заданной точностью значения логарифмических функций ln (1+x) и loga (1+x)
8. Построение графиков функций
Построим графики зависимостей ln (x+1) (Ряд 1) и loga (x+1) (Ряд 2), при x [0,05; 0,4] и а = 3 (см. рисунок 1).
Рисунок 1.
9. Оценка погрешности вычислений
Как мы видим из рисунка 2 была введена погрешность вычислений 10-5, из таблицы того же рисунка видно, что действительно, погрешность вычисления не превышает заданную:
0.3364722 - 0.3364799 = 0.000007 < 0.00001 (2)
Рисунок 2.
10. Сравнение точности вычислений показательных функций с использованием стандартных функций (MathCad)
На рисунке 4 представлено вычисление функций ln (x+1) и loga (x+1) с использованием стандартных функций MathCad.
Рисунок 3.
С помощью нашей программы были получены значения ln (0.4+1) = 0.33647 и log3 (0.4+1) = 0.30627.
Совпадение вплоть до третьего знака после запятой первого значения свидетельствует о корректности написанной нами программы.
Заключение и выводы
В данной курсовой работе были разработаны алгоритм и программа на языке Turbo Pascal для расчета логарифмических функции с помощью разложения ее в ряд Маклорена и заданной точности вычисления. Проведена отладка программы на контрольном примере. Полученные с помощью разработанной программы результаты для исходных данных контрольного примера совпали с результатами, приведенными в литературе. Это говорит о правильности работы программы.
Проведен расчет логарифмической функции при некоторых значениях функций. Проведено сравнение полученных с помощью разработанной программы для контрольного примера результатов с результатами расчетов, проведенных с помощью программы MathCad. Из результатов сравнений видно, что полученные значения показательной функции совпадают.
Список использованной литературы
1. А.В. Петров, В.Е. Алексеев, А.С. Ваулин и др. Вычислительная техника и программирование: Учеб. Для технических вузов - М.: Высшая школа., 1990 - 479с.
2. Демидович Б.П., Марон И.А. Основы вычислительной математики: Учебное пособие.6-е издание, стер. - СПб.: Издательство "Лань", 2007. - 672с.: ил.
3. Информатика. базовый курс.2-е издание / Под ред. С.В. Симоновича. - СПб.: Питер, 2007. - 640 с.: ил.
4. Маликов А.И. Программирование: Учебное пособие. Казань: Изд-во Казанского гос. техн. университета, 2001.176с.
5. Маликов А.И. Методические указания к курсовой работе по информатике. Казань: Изд-во Казан. гос. техн. ун-та, 2001.86 с.
Приложение
Текст программы на языке Turbo-Pascal для расчета логарифмической функции с помощью разложения ее в ряд Маклорена:
(вычисление ln (x+1) и loga (x+1) с заданной точностью)
Program kursovaiya;
uses crt;
var
x, e, b, a, rezult, st_result, rezult_a, st_result_a: Double;
n,k: Integer;
Function Pow (A,B: Double): Double;
(возводит в степень (A^B))
var T, rez: Double;
l: integer;
begin
T: = ABS (A);
If A < 0 Then
rez: = (-1) * exp (B * ln (T))
else
rez: = exp (B * ln (T));
l: =round (B);
if (l mod 2 = 0) then rez: = abs (rez);
if (B = 0) then rez: = 1;
Pow: = rez;
end;
begin
clrscr;
(Вывести что делать)
writeln ('Vvedite x v predelah [0.1]: ');
readln (x);
writeln ('Vvedite pogreshnost vichisleniy e: ');
readln (e);
writeln ('Vvedite osnovanie logarifma a: ');
readln (a);
rezult: = 0;
n: = 0;
(Вычисление стандартной функции ln (x+1)
st_result: = ln (x + 1);
(Вычисление разложения в ряд Маклорена)
Repeat
n: = n + 1;
rezult: = rezult + ( (Pow ( (-1), (n + 1))) * (Pow (x, n))) / n;
until (abs (rezult - st_result) < e);
(Вычисление стандартной функции ln (a))
st_result_a: = ln (a);
(вычисление LOGa (x+1))
rezult_a: = rezult / st_result_a;
writeln ('Znachenie ln po standartnoy funkcii TurboPascal: ');
writeln (st_result);
writeln ('Znachenie ln po razlogeniuy v riad: ');
writeln (rezult);
writeln ('Chislo slagaemih: ');
writeln (n);
writeln ('Znachenie LOGa (x+1): ');
writeln (rezult_a);
writeln (' x: ln (x+1) LOGa (x+1) ');
x: = 0;
for k: = 0 to 5 do
begin
rezult: = 0;
n: = 0;
x: = x + 0.1;
(Вычисление стандартной функции ln (x+1))
st_result: = ln (x + 1);
(Вычисление разложения в ряд Маклорена)
Repeat
n: = n + 1;
rezult: = rezult + ( (Pow ( (-1), (n + 1))) * (Pow (x, n))) / n;
until (abs (rezult - st_result) < e);
(Вычисление стандартной функции ln (a))
st_result_a: = ln (a);
(Вычисление LOGa (x+1))
rezult_a: = rezult / st_result_a;
writeln (x, ' ', rezult, ' ', rezult_a);
end;
if rezult-0.3364799<0.00001 then Writeln ('Погрешность вычислений не привышает заданную') else Writeln ('Погрешность вычислений привышает заданную')
readln;
end.
Размещено на Allbest.ru
Подобные документы
Общие сведения о системе Mathcad. Окно программы Mathcad и панели инструментов. Вычисление алгебраических функций. Интерполирование функций кубическими сплайнами. Вычисление квадратного корня. Анализ численного дифференцирования и интегрирования.
курсовая работа [522,7 K], добавлен 25.12.2014Математические возможности Mathcad и Microsoft Excel. Преобразование алгебраических выражений. Вычисление значения функции. Решение уравнений и систем. Вычисление значения интеграла, производных и пределов. Построение графиков функций. Работа с матрицами.
курсовая работа [559,5 K], добавлен 15.07.2012Вычисление значений выражений при вещественных типах данных float и double. Нахождение суммы элементов, используя оператор цикла. Вычисление функций с разложением в степенной ряд. Работа со строками. Обработка массивов с использованием функций.
лабораторная работа [24,3 K], добавлен 09.02.2010Команды, используемые при вычислении обыкновенных и частных производных аналитического выражения по одной или нескольким переменным в системе вычислений Maple, при интегрировании аналитических выражений и при вычислении пределов, сумм, рядов функций.
лабораторная работа [62,1 K], добавлен 15.07.2009Определение возможностей математического пакета и изучение методов вычисления выражений в Mathcad. Возможности построения графиков функций одной переменной. Просмотр и способы построения графика функции одного аргумента и участков двухмерных графиков.
контрольная работа [384,8 K], добавлен 06.03.2011Решение однородных дифференциальных уравнений в MathCad. Расчет значений функций напряжения на конденсаторе и тока в цепи второго порядка в свободном режиме при отсутствии гармонического воздействия с использованием системы MathCAD. Графики этих функций.
курсовая работа [705,0 K], добавлен 21.01.2011Использование нестандартных функций и подпрограмм (процедур) для составления алгоритмов вычислений. Программы для вычисления значение корней нелинейного уравнения по методу половинного деления. Составление алгоритма операций над матрицами и интегралами.
курсовая работа [580,0 K], добавлен 23.08.2015Вычисление выражений, использование стандартных функций; работа с графикой. Порядок действий при вычислении, способы ввода данных с клавиатуры. Построение таблиц функций. Организация циклов в программе, итерационные процессы. Работа с массивами чисел.
контрольная работа [614,7 K], добавлен 16.09.2012Разработка алгоритма и программы, обеспечивающей вычисление максимального значения функции на заданном отрезке, первой производной заданной функции. Методика расчёта, алгоритм решения задачи, описание программы. Результаты расчётов и графики функций.
курсовая работа [576,6 K], добавлен 17.05.2011Основные элементы окна программы MathCAD. Выполнение операций с файлами, редактирование, настройка программы. Способы ввода и редактирования в рабочем поле окна программы. Задание на рабочей области необходимых функций и матриц, выполнение вычислений.
контрольная работа [18,0 K], добавлен 11.09.2019