WWW.DIS.KONFLIB.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

 
<< HOME
Научная библиотека
CONTACTS

Pages:     | 1 |   ...   | 14 | 15 || 17 |

Куприянов владимир викторович численно-экспериментальное исследование вращательной динамики спутников планет 01.03.01 – астрометрия и небесная механика диссертация на соискание

-- [ Страница 16 ] --

Процедура hqrb_normalize осуществляет, в случае необходимости, при­ ведение компонент вектора к допустимому диапазону (нормировку). На­ пример, если компоненты являются угловыми переменными, процедура может осуществлять приведение их к диапазону [0, 2). Вызов процедуры hqrb_normalize производится автоматически на каждом шаге итерации, по­ сле вычисления текущего положения (). Формат процедуры следующий:

subroutine hqrb_normalize(x) где real*8 x(n) текущий вектор положения, подлежащий нормировке.

Если необходимость в нормировке вектора положения отсутствует, в мо­ дуле описания динамической системы, тем не менее, должна быть определена пустая процедура hqrb_normalize:

subroutine hqrb_normalize(x) А.3.2. Модуль пользовательского интерфейса (frontend) Во frontend-модуле (обычно являющемся основным файлом проекта) со­ держатся операторы чтения (при необходимости) параметров системы и па­ раметров HQRB-алгоритма, вызова процедур расчета ХПЛ и вывода резуль­ татов счета.

Программный комплекс предоставляет три процедуры расчета ХПЛ, со­ ответствующие трем алгоритмам получения матрицы касательного отобра­ жения:

subroutine hqrb1(n, tstart, tend, tstep, tav, shift, x0, stderr, subroutine hqrb2(n, tstart, tend, tstep, tav, x0, stderr, l, subroutine hqrb3(n, tstart, tend, tstep, tav, x0, stderr, l, Параметры процедур имеют следующий смысл:

integer n real*8 tstart real*8 tend real*8 tstep real*8 tav real*8 shift real*8 x0(n) integer stderr индекс (дескриптор) файла для вывода сообщений real*8 l(n) real*8 lmin(n) минимальные мгновенные оценки ХПЛ на real*8 lmax(n) real*8 lstd(n) real*8 ltrend(n) вектор относительных коэффициентов линейного Возвращаемые оценки ХПЛ (l) являются усредненными по интервалу [tav,tend]:

где — число точек интервала усреднения ( = tendtav ), — мгновенные оценки ХПЛ ( = 0 соответствует началу интервала усреднения = tav).

Параметры tend и tav следует выбирать таким образом, чтобы мгновен­ ные оценки ХПЛ стабилизировались (вышли на плато). Разумно задать tav несколько бльшим, чем время выхода на плато, а tend — равным 2tav.

Момент стабилизации можно определить по графику (). В случае, если усреднения ХПЛ не требуется, tav устанавливается равным tend.

Дополнительным средством контроля истинности оценок ХПЛ являют­ ся возвращаемые процедурами значения стандартных отклонений и относи­ тельных коэффициентов линейного тренда ХПЛ на интервале усреднения (lstd и ltrend), определяемые как где — средние по интервалу оценки (А.4). Эти значения позволяют про­ контролировать качество оценок (в частности, факт выхода на плато), не прибегая к построению графика (). Следует обратить внимание, что коэф­ фициент линейного тренда выводится в единицах «ХПЛ на полную длину интервала усреднения». Т.е., например, значение ltrend = 0.1 говорит о си­ стематическом росте мгновенных оценок ХПЛ на величину порядка 10% на протяжении интервала усреднения. Для получения абсолютного коэффици­ ента линейного тренда значение ltrend следует умножить на tendtav.

Диапазон изменения мгновенных оценок ХПЛ (параметры lmin и lmax) также рассчитывается по интервалу усреднения [tav,tend].

В параметре tend процедуры hqrb{1,2,3} возвращают фактический мо­ мент окончания счета (поэтому, в частности, этот параметр должен быть пе­ ременной). В случае нормального завершения это значение совпадает с затре­ бованным значением tend. При возникновении ошибок интегратора возмож­ но преждевременное прерывание расчетов. При этом фактическое значение tend будет меньше затребованного, а в файл с дескриптором stderr запи­ сывается причина ошибки и вектор положения на момент ее возникновения.

Если фактическое значение tend меньше момента начала усреднения tav, усреднение произведено не будет, а в качестве окончательных оценок ХПЛ (параметр l) будут возвращены их мгновенные значения на момент tend. При этом значения lmin, lmax, lstd и ltrend не определены. Если ошибка про­ изошла на первой же итерации, возвращаемое значение tend равно tstart, и не определены также значения l.

В случае использования алгоритма 1 параметр shift предполагается малым, с тем, чтобы вектора приращения с достаточной точностью пред­ ставляли касательные вектора. Однако, если значение shift слишком мало (приближается к машинной точности), ошибки округления также приведут к уменьшению точности расчета ХПЛ. Обычным значением shift является величина порядка 107.

Алгоритмы 2 и 3 не используют произвольного малого параметра shift.

Однако они требуют явного задания матрицы Якоби (, ). Кроме того, в алгоритме 2 значение шага итерации tstep предполагается малым.

В модуле frontend должна быть определена также процедура hqrb_callback.

Она вызывается автоматически на каждом шаге итерации и предназначается, например, для вывода траектории и текущих оценок ХПЛ. Формат процеду­ ры следующий:

subroutine hqrb_callback(t, x, J, l) где real*8 t real*8 x(n) real*8 J(n,n) матрица касательного отображения real*8 l(n) Процедура предназначена только для информирования главной програм­ мы о текущем состоянии расчетов. Не рекомендуется выполнять в ее теле лю­ бые действия, которые могут повлиять на ход расчетов, в частности, модифи­ цировать параметры t, y, J и l. Если функциональность callback-процедуры не нужна, следует, аналогично процедуре hqrb_normalize, предоставить пу­ стую процедуру:

subroutine hqrb_callback(t, x, J, l) real*8 t, x(6), J(6,6), l(6) Таким образом, для использования комплекса необходимо определить следующие процедуры:

1) hqrb_f и/или hqrb_df;

2) hqrb_normalize;

3) hqrb_callback.

Кроме того, ядро комплекса (core.f) предоставляет возможность выво­ да в файл внутреннего состояния интегратора на каждом шаге итерации.

Для этого в модуле пользовательского интерфейса может быть определен common-блок common /HQRB_integrator/ intdump, FileName_intdump character FileName_intdump* Здесь intdump — флаг, задающий необходимость вывода состояния интеграто­ ра, FileName_intdump — имя соответствующего выходного файла. Поскольку ядро всегда дописывает внутренние переменные интегратора в конец файла, при использовании данной возможности необходимо очистить или удалить файл до начала расчета ХПЛ, например, командой open(11, file=FileName_intdump) close(11, status=’delete’) Конкретная информация, записываемая в файл, определяется используемым интегратором. Для DOP853 это переменные IWORK(17)... IWORK(20). Также см. раздел А.4.

Если необходимости в выводе внутреннего состояния интегратора нет, определять common-блок /HQRB_integrator/ во frontend-модуле необязатель­ но.

А.3.3. Примеры использования комплекса Использование программного комплекса показано на примере расчета спектра ХПЛ в задаче пространственного вращения малого несимметричного (моделируемого трехосным эллипсоидом однородной плотности) естественно­ го спутника планеты, движущегося по орбите с постоянным эксцентрисите­ том [46]. Моделью задачи является система кинематических и динамических уравнений Эйлера (2.19), (2.21) ( = 6), параметрами — отношения / и / главных центральных моментов инерции спутника,, и эксцентри­ ситет орбиты.

вектора угловой скорости на оси инерции,, и углов Эйлера [0, 2), [, ], [0, 2). Все углы измеряются в радианах. Как отмечено в раз­ деле 2.5.2, используемая система углов Эйлера отличается от общепринятой и соответствует системе, описанной Уиздомом и др. [58].

Кроме того, та же задача решается с использованием параметров Ро­ дрига-Гамильтона (РГ) 0, 1, 2, 3 [62]. В отличие от системы углов Эй­ лера, содержащей координатную сингулярность при = ± (см. выше), параметры РГ регулярны во всей области задания ( [1, 1]). В этом случае размерность динамической системы = 7, вектор положения = Система (2.19), (2.21) в параметрах РГ записывается как с направляющими косинусами где истинная аномалия определяется уравнением (2.24).

Связь углов Эйлера в принятой системе с параметрами РГ задается со­ отношениями Соотношения (А.6) полезны для задания начальных данных интегрирования в форме углов Эйлера, имеющих наглядную геометрическую интерпретацию, соотношения (А.7) — для контроля траектории в ходе интегрирования.

Для ХПЛ системы (А.5) выполняются соотношения (8) = () ( = 1,..., 4). Отсюда следует, в частности, что (4) = 0, что, наряду с условием нормировки 3 2 = 1, может служить для контроля вычислений.

Исходные тексты примеров расположены в директории source, входные файлы — в директории examples.

Система уравнений Эйлера определена в файле eulereq.f, содержащем процедуры hqrb_f, hqrb_df и hqrb_normalize (см. раздел А.3.1). Кроме того, в этом файле определена служебная подпрограмма norm_2pi для приведения угла к диапазону [0, 2).

Аналогично, система уравнений Эйлера в параметрах РГ определена в файле eulereq-rh.f.

Модуль frontend (файл satlce.f для системы углов Эйлера и satlce-rh.f для параметров РГ) осуществляет чтение параметров алгоритма HQRB и на­ чальных данных из главного конфигурационного файла satlce.cfg, имеющего следующий формат:

character path*(*) — путь к файлам параметров (см. ниже) real*8 tend real*8 tstep integer tmap_alg real*8 shift real*8 theta real*8 phi real*8 psi real*8 dtheta real*8 dphi real*8 dpsi logical trace real*8 dtout logical trace_wa,...

logical traceint Параметры спутников (/, / и ) хранятся в отдельных файлах с расширением «.in». Файлы имеют следующий формат:

real*8 A_C — отношение / real*8 B_C — отношение / real*8 ecc — эксцентриситет Список спутников для обработки должен содержаться в файле задания satlce.job. Каждая строка этого файла представляет собой имя сессии, т.е.

имя файла параметров спутника (.in), без расширения. Например, если файл satlce.job имеет вид Hyperion Phoebe программа выполнит расчет последовательно для двух спутников, параметры которых находятся в файлах Hyperion.in и Phoebe.in.

Каталог, в котором производится поиск файлов параметров (.in), зада­ ется параметром path в satlce.cfg. Специальное значение path, равное «.», означает поиск в текущем каталоге. Значение path, отличное от «.», долж­ но оканчиваться разделителем каталогов, принятым в данной операционной системе («\» для Windows, «/» для UNIX).

Параметры алгоритма HQRB tend, tstep и shift1 передаются непосред­ ственно процедуре вычисления ХПЛ (см. раздел А.3.2). Параметр tmap_alg определяет алгоритм расчета матрицы касательного отображения. В за­ висимости от его значения, для расчета ХПЛ будет использована одна из процедур hqrb1, hqrb2 или hqrb3.

Параметры theta0... dpsi0 задают начальные данные для интегриро­ вания (углы Эйлера и их производные)2. Для исследования хаотического Параметр shift имеет смысл только при использовании 1-го алгоритма (tmap_alg = 1). При других значениях tmap_alg он игнорируется.

При использовании параметров РГ начальные данные, тем не менее, также задаются в терминах углов Эйлера и их производных, которые автоматически приводятся программой к начальным значениям 0... 3 с помощью формул (А.6).

режима вращения следует брать их внутри хаотической области фазового пространства, например, в окрестности сепаратрисы синхронного резонанса.

При исследовании плоского вращения следует брать угол нутации 0 = 0, для пространственного вращения — немного отличным от нуля. В большинстве случаев подходят данные 0 = 1.5 ( ), 0 = 0 = 0.001, 0 = 1, 0 = 0 = (окрестность гиперболической точки). Однако следует иметь в виду, что при некоторых комбинациях параметров /, /, хаотическая область может быть настолько узкой, что указанная точка окажется в области регулярного движения. В этом случае начальные данные нужно находить путем построе­ ния фазового портрета системы (сечения Пуанкаре).



Pages:     | 1 |   ...   | 14 | 15 || 17 |
 


Похожие материалы:

« Гожа Марина Львовна НАСЕЛЕНИЕ РАССЕЯННЫХ ЗВЕЗДНЫХ СКОПЛЕНИЙ ГАЛАКТИКИ 01.03.02 – астрофизика и звездная астрономия Диссертация на соискание ученой степени кандидата физико-математических наук Научный руководитель доктор физико-математических наук, профессор В.А. Марсаков Ростов-на-Дону – 2014 2 Оглавление Введение………………………………………………………………………………. 5 Глава 1. Неоднородность населения рассеянных звездных скоплений в Галактике…………………………………………………………………………. 20 1.1 ...»

«ЧАЗОВ Вадим Викторович РАЗРАБОТКА И ПРИМЕНЕНИЕ АЛГОРИТМОВ ЧИСЛЕННО-АНАЛИТИЧЕСКОГО МЕТОДА ВЫЧИСЛЕНИЯ ПОЛОЖЕНИЙ ИСКУССТВЕННЫХ СПУТНИКОВ ЗЕМЛИ Диссертация на соискание учёной степени доктора физико-математических наук Специальность 01.03.01. Астрометрия и небесная механика Москва – 2012 Содержание 1 Содержание Предисловие 7 1 Постановка задачи 17 1.1 Стандартные соглашения . . . . . . . . . . . . . . . . . . . . . . 17 1.1.1 Системы отсчёта . . . . . . . . . . . . . . . . . . . . . . . 17 1.1.2 ...»

« УДК 524.7;524.72-4 КАЙСИНА Елена Ивановна БАЗОВЫЕ СВОЙСТВА ГАЛАКТИК МЕСТНОГО ОБЪЕМА (01.03.02 - Астрофизика и звездная астрономия) ДИССЕРТАЦИЯ на соискание ученой степени кандидата физико–математических наук Научный руководитель: доктор физико–математических наук, профессор Караченцев И. Д. Нижний Архыз – 2014 2 Оглавление Введение Общая характеристика работы Актуальность Цели и задачи исследования Научная новизна Научная и практическая ценность работы Основные результаты ...»







 
© 2013 www.dis.konflib.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.