| Деструктор
Точечные изображения как объекты
Геометрическая оптика Фотоэлектрический
эффект
Ядерные реакции Волновые свойства
Квантовая механика Электромагнитное
поле
Задачник по ядерной физике Квантовая
физика Электростатика
Математика MATLAB Компьютерная математика Maple
Лекции по математике учебник
Outlook На главную Числовые
ряды |
Математика MATLAB
Пример функции с встроенной подфункций
Подфункции определены и действуют локально, т. е. только в пределах т-файла, определяющего основную функцию. Команда help пате выводит комментарий, относящийся только к основной функции, тогда как команда type name выводит весь листинг m-файла. Так что заданные в некотором m-файле подфункции нельзя использовать ни в командном режиме работы, ни в других т-файлах. При обращении к функции интерпретатор системы MATLAB прежде всего просматривает m-файл на предмет выявления подфункций. Если они обнаружены, то задаются как локальные функции. Благодаря локальному действию подфункций их имена могут совпадать с именами основных функций системы. Если в функции и подфункциях должны использоваться общие переменные, их надо объявить глобальными как в функции, так и в ее подфункциях.
Сравнение времен вычислений
Теперь определим время, необходимое для вычисления функции/(л:) в 1000 точек, используя первоначальное интегральное определение, и сравним его с временем, требующимся для схемы MinimaxApprox в виде непрерывной дроби. Так как наше приближение будет давать только 6 точных цифр, мы также потребуем 6 точных цифр и от интегрального представления функции:
> Digits :=б: St :=time():
> seq( evalf(f(i/250.0)), i = 1..1000 ):
> oldtime := time() - st;
oldtime-81.805
В процессе вычислений с использованием представления рациональной функции в виде непрерывной дроби иногда требуется внести несколько дополнительных цифр точности для страховки. В данном случае достаточно внести две дополнительные цифры. Итак, новое время вычислений:
> Digits := 8: st := tirae():
> seq( MinimaxApprox(i/250.0), i = 1..1000 ):
> newtime :» time()- st;
newtime:= .694
Ускорение вычисления при аппроксимации есть:
> SpeedUp := oldtime/newtime;
SpeedUp:=U7.S7464
Мы видим, что процедура вычислений, основанная на MinimaxApprox, выполняется почти в 120 раз быстрее процедуры с использованием исходного интегрального определения. Это просто феноменальный успех, полностью оправдывающий время, потерянное на предварительные эксперименты по аппроксимации и ее оптимизации! Разумеется, при условии, что вы будете применять эту аппроксимацию многократно.
Объектно-ориентированный
подход CorelDRAW Установка
параметров цвета в цифровом виде Искусство
Западная Европа Трехмерное объектно-ориентированное программное обеспечение
CAD Эффект Комптона Волновые
свойства электронов Геометрическая оптика Фотоэлектрический
эффект Строение атомных ядер Волновые свойства микрочастиц
Математические пакеты Моделирование и расчет
электронных схем Конструкционные материалы Релятивистская
механика Справочник по физикеПрикладная
математика Архитектурное проектирование ArchiCAD Строительное
и ландшафтного проектирования Planix Home 3D Architect
Функции
преобразования
;