(zarówno wersją nierelatywistyczną jak i relatywistyczną) Aktualizacja: 29/01/2007
Ogólne informacje Metoda J-macierzy jest jedną z algebraicznych metod mających zastosowanie w kwantowej teorii rozpraszania. Pozwala ona na przybliżone rozwiązanie problemu rozproszeniowego na radialnym potencjale V=V(r), dążącym do zera szybciej niż potencjał kulombowski. Metoda opiera się na fakcie, że operator radialnej energii kinetycznej, rozwinięty w odpowiednio dobranych bazach, jest trójdiagonalny - tworzy tzw. macierz Jacobiego. Kompletny opis teoretyczny metody znajduje się w dziale dokumentacja. Celem jednego z projektów naukowych realizowanych w Katedrze jest dalszy rozwój metody J-macierzy oraz programu komputerowego JMATRIX (wraz z dodatkowymi narzędziami), pozwalającego na przeprowadzanie obliczeń relatywistycznych oraz nierelatywistycznych przesunięć fazowych, przy użyciu tej metody. Projekt został rozpoczęty w 1999 roku. Po wyprowadzeniu przez Pawła Horodeckiego wersji relatywistycznej metody (patrz publikacje), pojawiła się potrzeba jej numerycznego sprawdzenia. Autorem pierwszej wersji kodu numerycznego (stworzonego w ramach pracy magisterskiej) jak i wszystkich następnych, jest Paweł Syty. Przeprowadzone testowe obliczenia numeryczne na modelowych potencjałach rozpraszających udowodniły poprawność metody, uwidoczniły jednak skalę problemów, które wiążą się z jej programowaniem. Po opublikowaniu pierwszych wyników, projekt został zawieszony a autorzy zajęli się inną problematyką. W międzyczasie powstała kolejna, usprawniona wersja programu, nie wykorzystana jednak w praktyce. W bieżącym roku projekt został ponownie przywrócony do realizacji. Kod źródłowy został znacznie usprawniony, obliczenia przyspieszone, wprowadzono do programu nowe, użyteczne funkcje. Trwają również prace nad usprawnieniem samej metody, w celu przyspieszenia zbieżności wyników. Niniejsza strona ma na celu upublicznienie wyników naszych prac nad metodą J-macierzy, w szczególności programu komputerowego JMATRIX. Dodatkowo, w celach poglądowych zamieszczone zostały notebooki dla pakietu Mathematica firmy Wolfram Research, realizujące to samo zadanie oraz inne materiały związane z metodą. Autor zezwala na bezpłatne używanie oraz dowolną modyfikację zamieszczonych kodów źródłowych i notebooków, pod następującymi warunkami. Funkcje programu
Kod źródłowy (Fortran 95) Bieżąca wersja: 2.01 / 28.01.2007 [skompresowane archiwum tar] [archiwum rar] [lista zmian] W celu zbudowania pliku wykonywalnego ze źródeł, wymagany jest kompilator Fortranu 95. W dziale odnośniki zebrane zostały darmowe kompilatory tego języka. Powyższe archiwum zawiera dodatkowo podstawową dokumentację i przykładowy plik wejściowy.
Poprzednie wersje (zdezaktualizowane): Binaria Poniżej zamieszczone zostały binaria dla popularnych systemów operacyjnych, skompilowane na podstawie bieżących źródeł. Dla uzyskania maksymalnej wydajności zalecane jest jednak samodzielne skompilowanie programu na docelowej maszynie. Dodatkowo, przy użyciu poniższych binariów niemożliwe jest podanie dowolnego potencjału, gdyż proces ten wymaga rekompilacji programu. Dla uruchomienia obliczeń należy również przygotować plik wejściowy, przykładowy plik znajduje się tutaj.
Notebooki dla programu Mathematica 5 Zamieszczone poniżej notebooki mogą być przydatne dla lepszego zrozumienia metody, jednak w rzeczywistych obliczeniach kod napisany w Fortranie 95 okazuje się znacząco szybszy i zalecane jest jego używanie. Jeżeli nie posiadasz pakietu Mathematica, do odczytu plików możesz użyć darmowego programu MathReader.
Dokumentacja (w języku angielskim)
Poniższa lista publikacji jest dość krótka, ponieważ projekt nie był rozwijany w latach 2000-2006.
P. Syty, Programowanie metody J-macierzy, praca dyplomowa, Politechnika Gdańska (1999) Przykładowe wyniki (wykresy w formacie Adobe PDF) 1. Rozpraszanie na potencjale w kształcie prostokątnej studni: V(r)=V0 dla a<=r<=b, 0 dla r<a lub r>b. Obliczenia nierelatywistyczne i relatywistyczne dla V0=-1, a=0.8, b=1. Parametry rozpraszanej cząstki: l=1, kappa=1, E=3 a.u.
2. Rozpraszanie na obciętym potencjale kulombowskim: V(r)=-Z/r dla r<=r0, 0 dla r>r0. Obliczenia nierelatywistyczne dla Z=30, r0=1. Parametry rozpraszanej cząstki: l=1, kappa=1, E=3 a.u.
3. Rozpraszanie relatywistyczne na obciętym potencjale kulombowskim: V(r)=-Z/r for r<=r0, 0 for r>r0. Obliczenia relatywistyczne dla Z=30, r0=1. Parametry rozpraszanej cząstki: różne l i kappa, E=0.4 a.u. W przygotowaniu 4. Rozpraszanie na potencjale Yukawy: V(r)=-g2Exp(-mr)/r dla r<=r0, 0 dla r>r0. Obliczenia nierelatywistyczne dla g=1, m=1, r0=1. Parametry rozpraszanej cząstki: l=1, kappa=1, E=3 a.u. W przygotowaniu Narzędzia Dodatkowe narzędzia (np. programy ułatwiające tworzenie plików wejściowych) zostaną wkrótce opublikowane.
The G95 project
- darmowy kompilator Fortranu 95, dostępny na wiele platform sprzętowych i programowych Informacje kontaktowe Wszelkie uwagi dotyczące metody, programu komputerowego oraz tej strony WWW będą mile widziane. Proszę je kierować na adres e-mail autora programu: sylas@mif.pg.gda.pl |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|