Page 1 of 2

The scientific program for Messbauer spectroscopy.

Posted: Fri Nov 10, 2006 9:31 pm
by andrew_programmer
Я написал научную программу для Месбауэровской спектроскопии,которая работает под Колибри.
http://www.menuetosgame.narod.ru/science/mesbauer.7z

Программа позволяет обсчитываать месбауэровские спектры(синглет,дублет,сикстет).Пример одного из таких спектров(сикстет) находиться в архиве с программой.Файлы спектров имеют расширение SPC.Для их открывания в архиве лежит модернизированный мной kfar,который запускает проограмму spektr(её нужно установить на рам диск).
Хотя 99% людей на этом форуме не знакомы с Месбауэровской спектроскопией,но всёравно вы сможете посмотреть как происходит обработка спектра программой.Для этого откройте kfar-ом файл sixtet.spc и нажмите клавишу Backspace.И вы увидите,как теоретический спект совпадёт с експериментпльным.Полученные из спектра параметры отображаются на панели.Для обработки более сложных спектров необходимо знать,как пользоваться проограммой(об этом написано в redme).
Прорграмма будет постепенно совершенствоваться(в этом не сомневайтесь).С появлением новых возможностей и уточнением физики существующих я буду выкладывать новые версии программы.

P.S.
Предлагаю в МЕНЮ создать раздел <<наука>>.И поместить туда все программы,относящиеся к науке(таблицу Менделеева например).

Posted: Mon Nov 13, 2006 5:03 pm
by diamond
Предлагаю в МЕНЮ создать раздел <<наука>>.И поместить туда все программы,относящиеся к науке(таблицу Менделеева например).
Раздел, в котором всего две программы?
Кроме того, в английском дистрибутиве period10 просто нет (перед K0600 меня задолбало переводить кучу сообщений на английский язык, и нехилая база данных осталась непереведённой, а поэтому исключенной из дистрибутива). Пункт меню, в котором всего один подпункт, будет выглядеть совсем странно.
[offtop]Похоже, пора в kfar делать считывание конфигурационных параметров из файла настроек. Ни у кого нету заготовок для ini-файлов?[/offtop]

Posted: Tue Nov 14, 2006 8:12 pm
by diamond
При пересчёте неправильно перерисовываются циферки - на фоне старых появляются новые, в результате получается нечитабельная мешанина.
Поместить программу в меню не представляется возможным, поскольку при запуске без параметров прога падает.

Posted: Wed Nov 15, 2006 3:43 pm
by andrew_programmer
>При пересчёте неправильно перерисовываются циферки - на фоне старых появляются новые, в результате получается нечитабельная мешанина.

Это происходит в том случае,если цифры слва "наезжают" на цифры справа.Я ограничу длину выводимо числа и увеличу расстояние между цифрами,тогда этого не будет.

>Поместить программу в меню не представляется возможным, поскольку при запуске без параметров прога падает.

Дело в том,что путь к файлу программа получает через параметры,переданные из KFAR.
Можно сделать,чтобы программа запускалась и без параметров.Только толку от пустого окна никакого.Но я всётаки сделаю.

А раздел,в котором одна пргограмма,у нас уже был(возможно и сейчас есть,точно не помню).Это раздел "запуск программы".

Думаю поместить программу в дистрибутив всётаки необходимо.Мы хотя бы в лаборатории будем ей спектры просматривать и обрабатывать.

Posted: Wed Nov 15, 2006 4:00 pm
by diamond
Сейчас его точно нет, пункт "запуск программы" лежит отдельным пунктом в главном меню. Раньше если и был, то я его уже не застал.
Необязательно делать, чтобы программа запускалась без параметров. Вот ac97snd сразу завершается, если не находит переданного файла - и это нормально, никто не жалуется. Правда, ни в меню, ни в иконках его нет.
Насчёт помещения в дистрибутив - вопрос спорный. У вас в лаборатории она и так уже есть. Всем остальным она не нужна. Нормальный пользователь ничего не поймёт в проге. Зачем она тогда?

Posted: Wed Nov 15, 2006 4:58 pm
by andrew_programmer
>Зачем она тогда?

Если кто-нибудь из физиков скачает Колибри,то,увидев,что под неё нет научного софта,он может не заинтересоваться системой.
А вообще,после хороше доработки программы,есть планы поместить её на сайты посвящённые месбауэровской спектроскопии.
Естественно с целью популяризации Колибри.
В физике есть такие задачи,решение которых требует большой оперативной памяти(сотни мегабайт).Я хочу написать программу для поиска функции плотности вероятности,получаемой из мессбауэровского спектра(точнее из спектра,получаемого наложением множества дискретных спектров).Решение этой задачи требует большого объёма оперативки и быстрой работы системы.Колибри идеально подходит под эти требования.Если ещё написать и эту прогу,то будет внятное объяснение почему программа написана именно под Колибри,а не под винду.И тогда,возможно,кто-нибудь из физиков захочет использовать Колибри для научных рассчётов.

Posted: Wed Nov 15, 2006 6:47 pm
by diamond
В винде и линуксе есть виртуальная память, которой больше, чем оперативной памяти (за счёт своп-файла). Соответственно если на компе мало оперативки, то такие задачи в Колибри решать будет просто нельзя. Даже если на компе много оперативки, всё равно для больших задач её может не хватить. А виртуальной памяти, между прочим, два гига (даже если вычесть всякие загруженные dll-ки и мусор, напихиваемый виндой, всё равно остаётся гораздо больше, чем оперативной).

Posted: Wed Nov 15, 2006 7:36 pm
by andrew_programmer
Для тех задач,что мне нужно решать,моих 256 мегабайт оперативки предостаточно(ёще останеться несколько десятков мегов).
А при использовании свопа задачи вообще невозможно решать(время решения стремиться к бесконечности).

У меня в Линуксе рамдиск съедает почти всю оперативку и ,как результат,всё ОЧЕНЬ медленно работает.На моём компьютере Колибри по сравнению с Линуксом - это как реактивный самолёт и дельтоплан.

Posted: Thu May 31, 2007 5:41 pm
by andrew_programmer
Самая последняя версия программы spektr на сегодняшний день.
Интерфейс полностью сделан на основе libGUI.

Вот скриншоты. Это реальные мессбауэровские спектры, которые я обрабатывал программой spektr для своей курсовой(на скриншотах приведены только пара спектров).

Размер каждой из картинок не более 35 килобайт(у некоторых меньше).

http://www.menuetosgame.narod.ru/science/screen_11.PNG
http://www.menuetosgame.narod.ru/science/screen_12.PNG
http://www.menuetosgame.narod.ru/science/screen_13.PNG
http://www.menuetosgame.narod.ru/science/screen_21.PNG
http://www.menuetosgame.narod.ru/science/screen_22.PNG
http://www.menuetosgame.narod.ru/science/screen_23.PNG

А вот это сама программа с исходниками. Если кто захочет испытать программу в действии, то скопируйте папку dll на рам диск(тоесть будет /rd/1/dll ). И пропишите в каком нибудь из файловых менеджеров "spc /rd/1/spektr.kex" для открытия спектров.
http://www.menuetosgame.narod.ru/science/spektr.7z

Posted: Thu May 31, 2007 7:10 pm
by Wildwest
Куча грамматических ошибок
Spektor -> spectra
автоколибровка -> автокАлибровка
crate -> create

Спектры (???) сами по себе странные - не верится, что существуют отрицательные частоты.

Зато libGUI прогрессирует - может это и было целью курсовика? ;)

Posted: Thu May 31, 2007 7:40 pm
by camper
Совершенно правильные замечания на счет ошибок. Ошибки есть, но мне кажется это все исправимо. Главное есть уже реальная демонстрация колибри как системы способной решать сложные вопросы, а не только в игрушки играться. Спектры не странные, это спектры поглощения гамма-лучей ядрами 57-железа в аморфном состоянии. Довольно типичные спектры я бы сказал для мессбауэровской спектроскопии или, по другому, ядерной-гамма резонансной спектроскопии в твердых телах. В дистрибутив конечно же встраивать нет смысла, поскольку очень уж экзотическая программа, понятная не многим, но вот плодами библиотеки стоит воспользоваться.

Posted: Thu May 31, 2007 9:21 pm
by andrew_programmer
>Спектры (???) сами по себе странные - не верится, что существуют отрицательные частоты.

Кхм... Похоже сказывается отсутствие документации по программе. Никаких отридцательных частот там нет и не может быть. Спектр - это зависимость ИНТЕНСИВНОСТИ от ЭНЕРГИИ.
Единственный глючок там имеется - это когда после восстанавления P(H) на оси абсцисс пишется отридцательная напряжённость поля, но если щёлкнуть на закладку INFORMATION ,а потом снова на SPEKTR , то всё становиться нормально. Я так до конца и не понял - это глюк программы или libGUI. Но со временем разберусь с этой проблемой.

>Куча грамматических ошибок

Я по памяти названия писал. Те что не помнил, сам досочинял приближённо. :) В общем со временем исправлю(сейчас времени нет).


>Зато libGUI прогрессирует - может это и было целью курсовика?

У нас не факультет Вычислительной Математики Кибернетики, а физический факультет. И курсовая должна быть по физике, а не по программированию.

Posted: Fri Jun 01, 2007 7:16 am
by Mario79
andrew_programmer
Прогресс в разработке на лицо. Удачи.

Posted: Fri Jun 01, 2007 1:03 pm
by Wildwest
>Спектр - это зависимость ИНТЕНСИВНОСТИ от ЭНЕРГИИ.

Андрей, в радиотехнике принято, что спектр - это зависимость чего-то (амплитуды, фазы) от частоты. Если в физике это не так, то прошу прощения.

Posted: Fri Jun 01, 2007 5:41 pm
by andrew_programmer
>Если в физике это не так, то прошу прощения.

Да ладно Сергей. Из-за ерунды не стоит извиняться.