Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Методические рекомендации. Функция root используется для определения значения корня уравнения f(x) = 0 в одном из двух вариантов:





1. Функция root

Функция root используется для определения значения корня уравнения f(x) = 0 в одном из двух вариантов:

· root(f(x),x);

· root(f(x),x,a,b).

где

f(x) – функция, определяющая уравнение;

x – переменная, относительно которой решается уравнение;

a,b – границы интервала, содержащего корень уравнения.

Для первого варианта использования функции root необходимо переменной х предварительно присвоить значение начального приближения к корню. Для второго варианта нужно предварительно установить границы а и b интервала, внутри которого имеется корень уравнения. Поиск корня этой функцией производится методом секущих. Значения функции на концах интервала f(a) и f(b) при этом должны иметь разные знаки.

Для определения корней этим методом необходимо:

· выполнить локализацию корней, например, графически, чтобы определить начальные приближенные значения корней или интервалы на которых находятся эти корни;

· выбрать точность решения;

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

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

Точность решения задается системной константой TOL, которая по умолчанию равна 0,001. Итерационный процесс решения прекращается в тот момент, когда значение функции становится меньше этой величины (׀f(x)׀< TOL). Исходя из скорости изменения функции вблизи корня, при необходимости можно выбрать другое значение точности, присвоив его константе TOL. Следует помнить, что необоснованное повышение точности решения при уменьшении значения TOL приводит к увеличению времени расчета, однако слишком низкая точность может привести к весьма существенным ошибкам при решении.

Пример.

Решить уравнение.

Определим заданную функцию (вместо этого можно записывать соответствующее выражение непосредственно внутри функции root),

 

f(x):=x3 – 4.5x2 – 7 x +10

Отделяем корни (находим приближенные значения корней или границы интервалов) с помощью графика (рис.5), установив диапазон изменения переменной x от –3 до 6 для лучшего отображения корней. По графику определяем начальное приближение для нахождения первого корня равное -2 и используем первый вариант применения функции. Для определения второго корня принимаем интервал от 0 до 3, и используем для разнообразия второй вариант функции. Для определения третьего корня принимаем начальное приближение равное 5 и используем первый вариант функции.

 

Рис. 5 – График для отделения корней

 

Первый корень: x:= –2 root(f(x),x) = -1.909

Второй корень: root(f(x),x,0,3) = 0.961

Третий корень: x:= 5 root(f(x),x) = 5.448

2. Функция polyroots

Все корни полинома (в том числе и комплексные) можно опреде­лить при помощи функции polyroots (v), где v – вектор коэффициентов полинома.

Коэффициенты полинома записываются в вектор v, начиная со свободного члена, затем при первой степени аргумента, второй и т.д. Вектор коэффициентов можно получить также и при помощи символь­ных вычислений (лабораторная работа № 2).

Для функции polyroots можно выбрать один из двух численных методов – метод полиномов Лаггера (он установлен по умолчанию) или парной матрицы. Метод выбирается из контекстного меню, вызываемого по щелчку правой кнопки мыши на слове polyroots.

Пример.

Используем уже определенную выше функцию f(x).

В качестве демонстрации используем символьное вычисление коэффициентов полинома, хотя в данном случае легко и без этого запи­сать вектор коэффициентов,

v:= f(t) coeffs, t®

 

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

Определяем значения корней, которые совпадают с определенными ранее с помощью функции roots,

polyroots(v)=

3. Вычислительный блок Given – Find

Для решения систем уравнений используется вычислительный блок, который состоит из 3 частей:

· Given - ключевое слово;

· система уравнений, записанная логическими операторами (панель Логический) в виде равенств и, возможно, неравенств;

· Find(x,y,z...) – встроенная функция для решения системы относительно переменных x,y,z,...

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

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

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

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

Функция Find реализует один из следующих градиентных методов:

· сопряженных градиентов;

· Левенберга-Марквардта;

· квази-Ньютоновский.

Выбор метода производится с помощью контекстного меню (щелчок правой кнопки мыши на слове Find). Можно установить значение Автоматический выбор или из пункта Нелинейный выбрать один из этих трех методов, а также дополнительные опции вычислений (метод вычисления производной, тип аппроксимации и проверка линейности). В большинстве случаев нет необходимости самим выбирать метод решения и дополнительные параметры, оставив установленное по умолчанию значение Автоматический выбор, используя эту возможность только при затруднениях с решением.

В некоторых особых случаях (например, если значения произ­водных возле корня близки к нулю) функция Find может и не найти решения. В таких случаях можно попытаться использовать вместо функции Find функцию Minerr с теми же параметрами и использующей те же алгоритмы (то есть просто заменить слово Find на слово Minerr). Функция Minerr минимизирует невязку системы уравнений и срабатывает даже при отсутствии решения. Поэтому полученное таким образом решение обязательно нужно проверять подстановкой (хотя во всех случаях такая проверка не помешает).

Пример.

Решить систему уравнений

Задаем две функции (вместо этого можно и просто записывать соответствующие выражения внутри блока Given, однако функции удобнее при проверке решения).

f1(x,y):= x4 + y2 – 3

f2(x,y):= x2 + 2y3 + 2

Задаем начальные приближения переменным

x: = 1 y: = 1

Решаем систему.

Given

f1(x,y) = 0 (знак равенства вводится с использованием панели Логический)

f2(x,y) = 0

V: = Find(x,y)

V =

Проверяем правильность решения (переменным x и y соответствуют элементы V0 и V1 вектора V).

 

f1(V0 ,V1) = -3.283x10-7 f2(V0 ,V1) = 1.31x10-6

 

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

Задание по работе

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

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

a) x = cos(k·x); б)

в) 2 x3 + k·x2 – 2 x + 100 = 0 г) x3k·x2 + 8 x – 20 = 0

 

Задание 2. Решите уравнения из задания 1 в) и г) при помощи функции polyroots, а также символьных вычислений. Сравните полученные результаты.

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

а) б)

 

Вопросы к лабораторной работе № 5

1. Каким образом определяется значение корня уравнения f(x) = 0 при помощи функции root. Приведите примеры для двух вариантов использования функции.

2. Как выбрать начальное приближение при численном решении алгебраического уравнения?

3. Каким образом задается точность решения алгебраического уравнения?

4. Как влияет выбор точности решения алгебраического уравнения на результат решения?

5. Как определяются корни полинома функцией polyroots. Приведите примеры.

6. Приведите структуру блока решения системы нелинейных уравнений.

7. Как выполняется установка параметров решения системы нелинейных уравнений?


ЛАБОРАТОРНАЯ РАБОТА № 6
Справочная система MS Excel

 

 

Цель работы – ознакомится со справочной системой MS Excel.

В данной лабораторной работе рассматривается справочная система MS Excel 2003.

Умение пользоваться справочной системой позволит более быстро и полно использовать возможности табличного процессора MS Excel.

Date: 2016-05-17; view: 837; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию