ВУЗ:
Составители:
xlabel('P')
ylabel('Z')
grid on
subplot(3,1,2)
plot ( P, v, 'k-')
xlabel('P')
ylabel('v')
grid on
subplot(3,1,3)
plot ( P, f, 'k-')
xlabel('P')
ylabel('f')
grid on
Результаты расчета на отдельных графиках представлены на рис. 6.3.
Реализованный алгоритм основан на квадратурной формуле Симпсона с автоматическим подбором
шага интегрирования для достижения требуемой относительной погрешности. Интегрирование гладких
функций лучше производить при помощи quad8, основанной на наиболее точных квадратурных форму-
лах Ньютона-Котеса с автоматическим подбором шага.
При вычислении в MatLab 5.2, 5.3 интегралов от функций, имеющих интегрируемую особенность,
например x1 , в нуле выводится сообщение об ошибке. В версии 6.0 данный алгоритм улучшен для
функций с особенностями, и, кроме того, появился quadl для нахождения определенного интеграла по
квадратурным формулам Гаусса-Лобатто.
Рис. 6.3 Результаты реализации программы ammiak
Также в MatLab имеются функции для вычисления двойных интегралов: dblquad. Используется
следующим образом:
>> dblquad(‘myfunction’, a, b, c, d)
где a, b – нижний и верхний пределы внутреннего интеграла; c, d – нижний и верхний пределы наруж-
ного интеграла.
Также имеется возможность вычислять интегралы с переменным верхним пределом. Вычисление
такого интеграла производится теми же функциями, что обычные определенные интегралы. Для нахож-
дения такого интеграла пишутся две функции: для подынтегральной функции и находящую значения
интеграла для каждого значения переменного верхнего предела (это число является входной перемен-
ной данной функции).
6.5 Интерполирование
Табличные данные очень часто удобно интерпретировать как некоторую функцию, в частности
сплайн (полиномиальную) (рис. 6.4). Если возникает задача о построении полиномиальной или кусоч-
но-полиномиальной функции для приближения некоторых исходных данных, то существуют в MatLab
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »