Вход/Регистрация
Maple 9.5/10 в математике, физике и образовании
вернуться

Дьяконов Владимир Павлович

Шрифт:

Рис. 11.55 показывает документ Maple в котором решается эта задача. Уравнение маятника записывается средствами Maple в виде файла oscil.m в формате М-файлов системы MATLAB. Записываются также системные переменные, задающие массу маятника М, его затухание С и упругость K. Затем с помощью функции ode45 (решение ОДУ методом Рунге-Кутта-Фельберга порядка 4–5) находится временная зависимость отклонения маятника. Она построена внизу рисунка и отражает типичные затухающие синусоидальные колебания с заданными граничными условиями.

Рис. 11.55. Пример моделирования механического осциллятора в системе Maple + MATLAB

Разумеется, для такой относительно простой задачи привлечение такой мощной и громоздкой системы как MATLAB имеет только познавательный смысл. Эта задача, что было показано выше, легко решается средствами системы Maple. Однако технология совместного использования новейших систем Maple 9.5/10 и MATLAB 7.0 SP2 на этом примере хорошо видна и может использоваться пользователями для решения существенно более сложных задач математического моделирования

11.6. Моделирование эффекта Доплера

11.6.1. Визуализация волн от источника звука

Рассмотрим хорошо известный физический эффект Доплера, возникающий при движении источника звука с частотой fu, относительно приемника звука. При этом меняется частота звука, воспринимаемая приемником

Будем считать приемник звука неподвижным, т.е. vn=0, а источник перемещающимся со скоростью vu. Скорость звука с на частоте 440 Гц составляет около 340 м/с. Движение в направлении распространения звуковой волны соответствует положительной скорости, а в противоположном — отрицательной. Описанный ниже документ находится в файле dopier (переработанный пример Sylvain Muise размещенный на Интернет-сайте корпорации MapleSoft).

Ниже представлена процедура позволяющая создавать анимационные эффекты перемещения источника звука (маленькая окружность) с разной скоростью и наблюдать картину создания и распространения звуковых волн:

> restart:with(plots):with(plottools):

> wave := proc(n, initSpeed, finalSpeed)

 local i, li, j, circles, se, source, slope:

 slope := (finalSpeed - initSpeed) / n:

 for i from 0 to n*4 do

li := NULL:

for j from 1 to n do

if i > (j-1)*4 then

circles[j][i] := circle([initSpeed * (j-1) + 0.5 * slope*(j-1)^2, 0], (i-(j-1)*4) / 4):

li := circles[j][i], li:

end if:

end do:

source := point([initSpeed * i/4 + 0.5 * slope * (1/4)^2, 0], @KOD = color=blue, symbol=circle, symbolsize=12):

animation||i := display([li, source]):

 end do:

 se := animation || (0..n*4):

end proc:

В этой процедуре n задает число отображаемых волн, initSpeed и finalSpeed — начальная и конечная скорость движения источника звука. Разумеется, наблюдаемая на экране скорость движения звуковых волн намного меньше реальной с тем, чтобы мы могли воспринять это движение и осознать смысл представленных кадров анимации.

11.6.2. Звуковые волны от неподвижного источника

Для наблюдения эффекта создания и движения звуковых волн при неподвижном источнике звука исполним команды:

> wave1 := wave(10,0,0):

> display(wave1,insequence=true,scaling=constrained, axes=none);

Мы увидим рисунок в виде маленького кружка в центре — это источник звука. Пустив анимацию можно наблюдать эффект создания звуковых волн в виде ряда концентрических окружностей с увеличивающимся диаметром — рис. 11.56.

Рис. 11.56. Картина звуковых волн от неподвижного источника звука

11.6.3. Случай движения источника звука со скоростью, меньшей скорости звука

Теперь рассмотрим случай, когда источник звука перемещается со скоростью, меньшей скорости звука:

> wave2 := wave(10,0.5,0.5):

> display(wave2,insequence=true,scaling=constrained, axes=none);

В этом случае мы наблюдаем разрежение звуковых волн после источника звука и их сжатие перед источником — рис. 11.57. Это означает изменение длины волны звуковых колебаний — случай, который многие из нас наблюдали, когда поезд с включенной сиреной проносится мимо нас и удаляется.

  • Читать дальше
  • 1
  • ...
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: