У меня есть вектор 358 чисел. Я хотел бы сделать численное интегрирование этого вектора, но я не знаю функции этого.
Я нашел, что мы можем использовать прерывания или четверку, но я действительно не понимаю, как интегрироваться без функции.
Вам не нужно знать функцию для численного интегрирования; это точка trapz
и quad
. Просто передайте trapz
свой вектор. Вот ссылка на документацию .
Подумайте об интегрировании, чтобы найти область под кривой, которая образована вашим вектором. На самом деле это не кривая, а многоугольная цепочка.Что делает функция TRAPZ , она находит сумму площадей каждой трапеции, образованной каждыми двумя соседними точками в вашем векторе, и их проекцию на ось X. См. Документацию по функциям, если у вас неравномерное расстояние между вашими точками или если расстояние не равно единице.
Подробнее об этом методе можно прочитать, например, в Википедии .
Если вы знаете горизонтальный интервал вашего вектора, вы можете использовать trapz, чтобы интегрировать его без функции. Например, для интегрирования y=sin(x)
от 0 до pi с 358 отрезками,
x=0:pi/357:pi;
y=sin(x);
area=trapz(x,y);
Если просто использовать trapz(y)
, то получится гораздо большее число, так как по умолчанию расстояние между точками принимается равным 1. Эту проблему можно решить, умножив на расстояние между точками x:
area=pi/357*trapz(y);