Помогите,пожалуйста, загнать эту "махину" в процедуру.Входящими параметрами здесь
по ходу мысли будут функция для разложения y,границы интервала L1 и L2,кол-во членов разложения n и масштаб А.А есть ли стандартная процедура для Фурье ?
print(`Разложение функции f(x)`=y);
> print(`в интервале:`);[L1,L2];
> print(`Количество членов разложения`= n);
> L:=(L2-L1)/2:
> a0:=1/L*int(y,x=L1..L2):
> for k from 1 by 1 to n do
> a[k]:=1/L*int(y*cos(Pi*k*x/L),x=L1..L2);
> b[k]:=1/L*int(y*sin(Pi*k*x/L),x=L1..L2);
> od:
> k:='k':
> y1:=a0/2+sum('a[k]*cos(Pi*k*x/L)+b[k]*sin(Pi*k*x/L)','k'=1..n):
> print(`Разложение имеет вид:`);
> print(`f(x)`=y1);
> print(`Построим графики функции и ее разложения в ряд Фурье:`);
> plot({y,y1},x=-A..A);
Разложение Фурье
Модератор: Admin
Уважаемый, Antic прав. Прежде чем, делать из вашей болванки процедуру, ее следовало бы облагородить. Вероятно, вы используете Maple 5, ибо позже вместо do пишут end do.
Заголовок цикла также стоит писать оптимально для данного случая - for k to n.
k:='k' не нужно, ибо ниже вы уже определили его как 'k'. Да и группа функций print ну уж очень корява.
Что до создания приличных процедур, то советую обратиться к литературе. Все же задания следует делать самому, предварительно хоть по минимуму поднаторев в теории.
Заголовок цикла также стоит писать оптимально для данного случая - for k to n.
k:='k' не нужно, ибо ниже вы уже определили его как 'k'. Да и группа функций print ну уж очень корява.
Что до создания приличных процедур, то советую обратиться к литературе. Все же задания следует делать самому, предварительно хоть по минимуму поднаторев в теории.
Начиная с Maple 8/9 все есть. Для быстрого преобразования Фурье есть функции FFT и iFFT (прямое и обратное преобразования), для аналитических зависимостей в пакете расширения inttrans (интегральные преобразования) есть функции fourier и invfourier. Можно почитать и найти примеры в книге Дьяконова В. П. "Maple 9 в математике, физике и образовании" (М. Солон-Пресс, 2004). Кстати недавно вышла книга моих коллег из физ-матем. факультета СГПУ Кристалинского Р.Е. и Кристаллинского В.Р. "Преобразования Фурье и Лапласса в системах компьютерной математики" (М. Горячая линия. Телеком). Она посвящена всецелло интегральным преобразованиям Фурье и Лапласса.
ventura говорил о разложении в ряд Фурье. Не знаете ли вы о существовании операций в maple, вычисляющих коэффициенты разложения функции в ряд Фурье?
И чтобы не создавать новую тему, еще один вопрос. Maple позиционирует себя как специалиста по символьным вычислениям. По сему нет ли у него процедуры, вычисляющий n-й коэффициент в разложении Тейлора функции? Несколько слагаемых + о малое смотрятся как-то не символьно (в духе матлаба?).
И чтобы не создавать новую тему, еще один вопрос. Maple позиционирует себя как специалиста по символьным вычислениям. По сему нет ли у него процедуры, вычисляющий n-й коэффициент в разложении Тейлора функции? Несколько слагаемых + о малое смотрятся как-то не символьно (в духе матлаба?).
ventura говорил о разложении в ряд Фурье. Не знаете ли вы о существовании операций в maple, вычисляющих коэффициенты разложения функции в ряд Фурье?
И чтобы не создавать новую тему, еще один вопрос. Maple позиционирует себя как специалиста по символьным вычислениям. По сему нет ли у него процедуры, вычисляющий n-й коэффициент в разложении Тейлора функции? Несколько слагаемых + о малое смотрятся как-то не символьно (в духе матлаба?).
И чтобы не создавать новую тему, еще один вопрос. Maple позиционирует себя как специалиста по символьным вычислениям. По сему нет ли у него процедуры, вычисляющий n-й коэффициент в разложении Тейлора функции? Несколько слагаемых + о малое смотрятся как-то не символьно (в духе матлаба?).
Превый вопрос: нет.
Второй: Мапловский Тэйлор считается до любого, наперед заданного (n-го) знака. Прочитайте внимательно справку.
Если новичок в Матлаб, читайте: http://www.exponenta.ru/educat/free/matlab/gs.pdf
Второй: Мапловский Тэйлор считается до любого, наперед заданного (n-го) знака. Прочитайте внимательно справку.
Если новичок в Матлаб, читайте: http://www.exponenta.ru/educat/free/matlab/gs.pdf
Г-да, Вы уже начинаете путать божий дар с яичницей. При чем тут Тейлор, речь ведь идет о разложении в ряд Фурье. Я вроде ясно написал, что в новых Maple есть функция FFT - быстрого прямого преобразования Фурье. Она то и дает переход от временной зависимости к частотной, т.е. частотный спектр. Неудобство лишь в том, что число отсчетов желательно иметь кратным 2 в степени N и, конечно, правильно интерпретировать результаты FFT. Подробности см. в книге Дьяконова В. П. "Maple 9 в математике, физике и образовании" (М.: Солон-Пресс, 2004). Привожу также оттуда картинку, дающее представление о разложении в ряд Фурье с разным числом членов функции f(t) - пример на пилообразную зависимость, но можно задать и иную. Более того в этом простецком примере выполняется и обратное преобразование и все делается в режиме анимации - так что можно отчетливо наблюдать развитие эффекта Гиббса. Что касается разложения в ряд Тейлора, то смотрится даже очень символьно - от численного разложения как раз и отличается членом с погрешностью, который, кстати приходится отсеивать для построения графиков (см. упомянутую книгу - там все это есть с примерами).


Break, pardon, но я не говорил о символьных представлениях FFT и iFFT - это функции, "евстевственно" численные. Хотя если кому то уж очень хочется, то можно сформировать ряд Фурье с подстановкой полученных из FFT данных для вычисленных амплитуд и фаз гармоник. Кстати, в приведенном примере БПФ и не используется!
Если у вас есть пример
, то приведите.
Тогда можно будет составить хорошую функцию, по которой удобно рисовать графики и не только, и не выписывать каждый раз интегралы от синусов...
Просто, быстрое преобразование - вещь, скорее, радиофизическая и на чистмате ее не проходят.
Если примера нет, то буду сам изучать вопрос. Как говорится, "по определению".
PS Поправлюсь: на чистмате, конечно, проходят, но акцента на это не делают. Несравнимо больше времени классическому Фурье уделяют.
то можно сформировать ряд Фурье с подстановкой полученных из FFT данных для вычисленных амплитуд и фаз гармоник
, то приведите.

Тогда можно будет составить хорошую функцию, по которой удобно рисовать графики и не только, и не выписывать каждый раз интегралы от синусов...
Просто, быстрое преобразование - вещь, скорее, радиофизическая и на чистмате ее не проходят.
Если примера нет, то буду сам изучать вопрос. Как говорится, "по определению".

PS Поправлюсь: на чистмате, конечно, проходят, но акцента на это не делают. Несравнимо больше времени классическому Фурье уделяют.
Break, не перенимайте манеру известной Вам группы. Я совершенно не нуждаюсь в рекомендациях что мне надо делать и что не надо. Задача учителя подсказать ученикам что делать, а вовсе не делать это за них. Сегодня привез из Москвы корректуру по очередной энциклопедии по MATLAB (том. 1, больше 1100 стр.) и буду заниматься ей. Поверьте, это важнее, чем отвечать на вопросы, подобные обсуждаемому тут. Так что, смогу участвовать в форуме лишь по пустякам. Если Вас интересует затронутая проблема (разложение функции в ряд Фурье средствами Maple), то буду лишь рад, если вы найдете там что то новое или хотя бы изящное. С пожеланием успехов!