Nowe podejście do analizy online w eksperymentach spektroskopii jądra atomowego na wiązce przyspieszonych jonów

Podobne dokumenty
INSTYTUT FIZYKI JĄDROWEJ im. Henryka Niewodniczańskiego Polskiej Akademii Nauk ul. Radzikowskiego 152, Kraków

LNL Legnaro, IFIC Valencia, GSI, ZFJA. Ernest Grodner Weryfikacja hipotezy udziału kolektywnych bozonów w rozpadzie beta 62 Ga

γ6 Liniowy Model Pozytonowego Tomografu Emisyjnego

Ćwiczenie 3++ Spektrometria promieniowania gamma z licznikiem półprzewodnikowym Ge(Li) kalibracja energetyczna i wydajnościowa

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Instrukcja obsługi programu SWWS autorstwa Michała Krzemińskiego

Właściwości i metody obiektu Comment Właściwości

Zacznijmy więc pracę z repozytorium. Pierwsza konieczna rzecz do rozpoczęcia pracy z repozytorium, to zalogowanie się w serwisie:

Delphi podstawy programowania. Środowisko Delphi

Tworzenie zespołu. Laboratorium Technik Komputerowych I, Inventor, ćw. 4. Wstawianie komponentów i tworzenie wiązań między nimi.

Jak ustawić cele kampanii?

Kolejną czynnością będzie wyświetlenie dwóch pasków narzędzi, które służą do obsługi układów współrzędnych, o nazwach LUW i LUW II.

Programowanie strukturalne i obiektowe. Funkcje

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Zakładka Obmiar jest dostępna dla pozycji kosztorysowej w dolnym panelu. Służy do obliczania ilości robót (patrz też p ).

W tym celu korzystam z programu do grafiki wektorowej Inkscape 0.46.

Wyznaczanie profilu wiązki promieniowania używanego do cechowania tomografu PET

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych. Ćwiczenie 3 stos Laboratorium Metod i Języków Programowania

Temat 5. Programowanie w języku Logo

Jak przesłać mapę do urządzenia lub na kartę pamięci?

Tworzenie zespołu. Ustalenie aktualnego projektu. Laboratorium Technik Komputerowych I, Inventor, ćw. 4

przyziemnych warstwach atmosfery.

Spis treści MONITOR PRACY... 4

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Wykład 5: Klasy cz. 3

PHOTON_COM PROGRAM PC

Część I Rozpoczęcie pracy z usługami Reporting Services

Projekt z przedmiotu Specjalizowane języki programowania Temat: Zastosowanie programowania obiektowego w środowisku LabView

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

Programowanie w języku Python. Grażyna Koba

Wikispaces materiały szkoleniowe

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Przewodnik instalacji i rozpoczynania pracy. Dla DataPage+ 2013

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista

INSTRUKCJA UŻYTKOWNIKA. Wielkopolski system doradztwa. edukacyjno-zawodowego

Instalacja oprogramowania Rigel Med-eBase dla systemów Windows XP, 7 oraz 8.


Instrukcja użytkownika

Wiązki Radioaktywne. wytwarzanie nuklidów dalekich od stabilności. Jan Kurcewicz CERN, PH-SME. 5 września 2013 transparencje: Marek Pfützner

Korzystanie z poczty i Internetu

OpenAI Gym. Adam Szczepaniak, Kamil Walkowiak

Podstawy Programowania Obiektowego

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

System plików warstwa logiczna

Metody eksploracji danych Laboratorium 1. Weka + Python + regresja

Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1

37. Podstawy techniki bloków

REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i realizacja serwisu ogłoszeń z inteligentną wyszukiwarką

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

Pomiar energii wiązania deuteronu. Celem ćwiczenia jest wyznaczenie energii wiązania deuteronu

Tworzenie szablonów użytkownika

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Robert Barański, AGH, KMIW For Loops While Loops v1.0

PLATFORMA ROZSZERZONA

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

ZMIENNE. Podstawy PHP

Projekt 4: Programowanie w logice

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Co to jest arkusz kalkulacyjny?

Symfonia Produkcja Instrukcja instalacji. Wersja 2013

Struktury systemów operacyjnych

Rys. 1. Rozpoczynamy rysunek pojedynczej części

Do korzystania ze strony elektronicznej rekrutacji zalecamy następujące wersje przeglądarek internetowych:

REFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania

Wykład 8: klasy cz. 4

System Obsługi Zleceń

Wprowadzenie do programu Mathcad 15 cz. 1

EvalCOMIX Przewodnik wprowadzajćy María Soledad Ibarra-Sáiz - Susana Olmos-Migueláñez - Gregorio Rodríguez-Gómez Luty

Język C zajęcia nr 11. Funkcje

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Konsola operatora TKombajn

Scenariusz zajęć z matematyki dla klasy I gimnazjum z wykorzystaniem programu edurom Matematyka G1

Instalowanie certyfikatów celem obsługi pracy urządzenia SIMOCODE pro V PN z poziomu przeglądarki internetowej w systemie Android

CZĘŚĆ A PIERWSZE KROKI Z KOMPUTEREM

ERGODESIGN - Podręcznik użytkownika. Wersja 1.0 Warszawa 2010

CoDeSys 3 programowanie w języku drabinkowym LD

Projekt Hurtownia, realizacja rejestracji dostaw produktów

Metody eksploracji danych Laboratorium 2. Weka + Python + regresja

5.2. Pierwsze kroki z bazami danych

ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY w Szczecinie

Kopiowanie ustawień SolidWorks

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Ćwiczenie 1. Modelowanie prostego procesu

INSTRUKCJA OBSŁUGI ❽ Wyniki analizy

ABC 2002/XP PL EXCEL. Autor: Edward C. Willett, Steve Cummings. Rozdział 1. Podstawy pracy z programem (9) Uruchamianie programu (9)

Informatyka II. Laboratorium Aplikacja okienkowa

Kodowanie pomiarów w oprogramowaniu Trimble Access

Maskowanie i selekcja

Symulacja działania sterownika dla robota dwuosiowego typu SCARA w środowisku Matlab/Simulink.

Ćwiczenie Zmiana sposobu uruchamiania usług

Platforma e-learning Beyond45. Przewodnik użytkownika

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

Platforma e-learningowa

Informatyka I. Typy danych. Operacje arytmetyczne. Konwersje typów. Zmienne. Wczytywanie danych z klawiatury. dr hab. inż. Andrzej Czerepicki

Transkrypt:

Nowe podejście do analizy online w eksperymentach spektroskopii jądra atomowego na wiązce przyspieszonych jonów Jerzy Grębosz IFJ PAN

GSI Darmstadt

Separator Fragmentów (FRS) wiązka jąder egzotycznych Cocktail beam to użytkownik musi dokonać separacji Nie ma jednego uniwersalnego algorytmu do identyfikacji jąder

Zbieranie zdarzeń 105 Ge

RISING przepływ danych GUI dla oglądania widm tworzonych przez spy Go4 Spy układy elektroniczne DAQ (brak grafiki) zdarzenia taśma dysk

"Cocktail beam" Obraz widma dwuwymiarowego Z versus A/q w trakcie eksperymentu z jądrem 100Sn ilustrujący wiązkę "cocktail beam" dostarczaną przez FRS. "wyspy" poszczególnych izotopów są wyraźnie rozdzielone co upraszcza procedurę identyfikacji.

Online analysis - oczekiwania Naprawdę online (bez presortu jak ROOT tree) Widma 1D (wszystkich przychodzących sygnałów) Widma 2D Algorytm identyfikacji pocisku (projectile) Kilka tysięcy widm "by default" zrobiłem to w Go4 Jednak, eksperymentator chciałby zobaczyć więcej

Posługując się przygotowanym algorytmem eksperymentator chciałby zobaczyć pierwsze oznaki sukcesu Jeśli oczekiwany efekt nie jest widoczny, eksperymentator może chcieć zmienić algorytm ich tworzenia Jak najszybciej potrzebne są nowe widma warunkowe! Czasem, gdy wszystko idzie źle w trakcie nocnej szychy... antynomia nieni ż e l a z u tu są n e m y r ram e g p o s r k p e ć e a i trakc fikow y w d i o n m c z e b cy o trafią o p y tuacji y z r s ó j t Naukow e k n, t i z e onkr u lu d k k l i o k d b o u l g go ować t p a d a od jedne y e ab n i l n o y z anali

Zaproponowałem system analizy online, który Zapewnia swobodę tworzenia dowolnych widm jedno- lub dwuwymiarowych obwarowanych nawet bardzo złożonymi warunkami (także definiowanymi przez użytkownika) Nie wymaga od eksperymentatora żadnej szczególnej znajomości programowania, ani nie wymaga żadnych modyfikacji programu analizy online. Nie wymaga rekompilacji programu ani nawet zatrzymania trwającej bieżąco analizy, aby uaktualnić warunki bramkujące widma. Jak to jest zrealizowane?

GUI dla monitorowania exp. i do dowodzenia analizą online 1) Nowe GUI, 2) inteligentny Spy Go4 Spy układy elektroniczne DAQ (brak grafiki) zdarzenia taśma dysk

Cracow GUI Eksperymentator używając tzw. kreatorów tworzy dowolne widma, które mogą być bramkowane wieloma warunkami Produkty tych kreatorów - definicje widma lub definicje warunków), są zapisywane na dysku w postaci plików tekstowych ( persistent ) Spy program Otwiera definicje nowych widm I nowych warunków, tworzy odpowiednie obiekty I natychmiast zaczyna inkrementować nowe widma danymi przychodzącymi z eksperymentu.

Jak jeden program (GUI) może pokazać drugiemu (Spy), o widmo której zmiennej chodzi? Program analizujący (Spy), wkrótce po każdorazowym starcie powinien sporządzać sobie rodzaj słownika. W słowniku takim nazwy interesujących zmiennych miałyby przypisane adresy, pod którymi owe zmienne zaistniały właśnie w pamięci. Zatem byłby to słownik, który "tłumaczy" nazwę (interesującej) zmiennej na adres.

Inkrementor x = x + 1; channel[500] = channel[500] + 1; Inkrementor Inkrementor reprezentuje reprezentujezmienną zmiennąprogramie programieanalizy analizyonline; online; zmienną, zmienną,która któramoże możebyć byćużyta użytado doinkrementacji inkrementacjijakiegoś jakiegoświdma. widma. Przykład inkrementorów: gamma-energy raw, calibrated Doppler corrected Nie każda zmienna zasługuje na bycie inkrementorem Do reprezentacji tego pojęcia zdefiniowano w programie Spy klasę o nazwie Tincrementer. Obiekty tej klasy zawierają: - adres zmiennej - typ zmiennej (int, double, bool) - walidator - wskaźnik do "miejsca urodzenia"

Mapa Inkrementorów 0) Definicje obiektów-inkrementorów są umieszczone (przez piszącego Spy) w różnych "obiektach-detektorach" 1) W chwili startu programu Spy definicje inkrementorów wpisują swoją nazwę i swój adres w mapie dostępnych inkrementorów. 2) Po zakończenu tego procesu sporządzania mapy, mapa "publikuje" listę wszystkich nazw (zapisuje na dysku) Z tej to listy wielokrotnie będzie korzystał program Cracow-GUI

Inkrementor z walidatorem Niektóre inkrementory skojarzone są z jakąś zmieną typu Bool informującą o ważności bieżącej zawartości inkrementora mw41_left mw41_right mw41_x_when_ok [-150, +150] W przypadku komory drutowej jest to flaga oznaczająca czy obliczenie pozycji powiodło się czy nie.

Jak stworzyć widmo "zasilane" przez wybrany inkrementor? User User defined definedspectra spectra creator creator

Spectra wizard kreator widm Użytkownik może zdefiniować widmo 1D lub 2D Zależnie od decyzji następne strony kreatora wyglądają odmiennie.

Wybór zakresu widma 1D

Lista wszystkich (ok. 2500) inkrementorów oferowanych przez program Spy widoczna w odrębnym oknie dialogowym

Wysłanie definicji do spy'a

Widmo z tylko jednego kryształu Ge

Jednak głównie do odejmowania widm..

mw41_x mw41_y P(x,y) mw41_y mw41_x

P(x,y) Y X inkrementory X, Y

a) Wszystkie możliwe kombinacje inkrementorów P(x1, y1) P(x1, y2) P(x2, y1) P(x2, y2) P(x1, y7) P(x2, y7) P(x7, y7)... P(x7, y1) P(x7, y2) b) Inkrementory z tego samego detektora P(xk, yj) gdzie xk, yj są inkrementorami z tego samego detektora. (i.e. k j) Gamma energy vs gamma time matrix c) Inkrementory z różnych detektorów P(xk, yj) gdzie xk, yj są inkrementorami z różnych detektorów (i.e. k j) Gamma-gamma energy coincidence matrix

Y Y incrementer(s) incrementer(s)

Po lewej widmo energii kwantów gamma względem czasu ich rejestracji. Projekcję tej macierzy na oś X obrazuje widmo po prawej stronie. (Na podobnej zasadzie można sporządzać widma czasowe obrazujące czas życia izomerów).

Użyteczne narzędzie - metainkrementor: inkrementor zbiorczy (czyli lista innych inkrementorów) cluster_crys_a_1_energy_cal, cluster_crys_a_2_energy_cal, cluster_crys_a_3_energy_cal,...... cluster_crys_r_6_energy_cal, cluster_crys_r_7_energy_cal, 105 ALL_cluster_crys_energy_cal Ge-clusters, Hector BaF2, Miniball Ge det., CATE (9 telescopes)

0055 1 ee 1 n i n aaggi m I Im

Po lewej utworzona kreatorem widm symetryczna macierz koincydencji czasowych gamma-gamma. Po prawej stronie widać dwa widma będące projekcją tej macierzy na oś X i na oś Y. Widać tu koincydencje czasowe kwantów gamma o energii 511 kev. Przy tworzeniu tej macierzy nie została użyta żadna procedura tzw. addback; (dostępna w programie, choć nie omawiana w tej pracy).

Warunki

Widma i warunki są odrębnymi obiektami Warunki Widma

Warunki jakich potrzebujemy elementarny warunek 1D (bramka) dół <= x <= góra elementarny warunek 2D P(x, y) jest w bramce wielokątnej (banana gate)

Warunki dostępne w systemie Cracow mogą być kombinacjami następujących wyrażeń Alternatywa bramek (elementarnych waunków 1D) Koniunkcja bramek Alternatywa bramek wielokątnych (elementarnych warunków 2D) Kombinacje logiczne innych warunków Koniunkcja bramek wielokątnych

OR list bramek (warunków elementarnych 1D)

AND list bramek Sometimes Sometimesmore more sensible sensibleis: is: TRUE TRUE (warunków elementarnych 1D)

OR list bramek wielokątnych

AND list bramek wielokątnych

Przypisywanie Przypisywanie warunku warunku wybranemu wybranemu widmu widmu

Zagnieżdżanie warunków łańcuch warunków C D E F G Circulus vitiosus H Nie "łańcuch", ale "drzewo" I J E D K L F B C A M N G

Jak z definicją warunku postępuje Spy? Ewaluacja inkrementora "prostego"

Ewaluacja metainkrementora występującego w koniunkcji

Ewaluacja metainkrementora występującego w alternatywie

Wygląd ekranu Cracow GUI w trakcie eksperymentu, którego przedmiotem było mało poznane jądro 100Sn. Na poszczególnych widmach zobaczyć można liczne bramki wielokątne, na których zbudowane zostały warunki pozwalające uzyskać wartościowe wyniki, mimo małej wydajności produkcji jąder. W lewym górnym rogu widzimy widmo Z vs A/q służące do identyfikacji izotopów dostarczanych przez FRS. 100 Wielokątna bramka w lewym górnym rogu tego widma służy do wybrania jąder Sn badanych w tym eksperymencie. Pozostałe widma służyły do stworzenia warunków pozwalających wybrać najlepszą możliwą identyfikację jąder. Na przykład widmo drugie to widmo, na którego osi X jest obrazowana liczba Z wyznaczona dzięki komorze jonizacyjnej music42, a na osi Y liczba Z wyznaczona za pomocą komory jonizacyjnej music41. Prawidłowe zdarzenia to te, w których obie wielkości są proporcjonalne i leżą wewnątrz diagonalnej bramki. Macierz trzecia postępuje podobnie z wynikami wyznaczania A/q, a kolejne macierze pozwalają stworzyć warunki wybierające poprawne zdarzenia na zasadzie określania miejsca przelotu jonu wiązki przez płaszczyzny ogniskowania s2 i s4.

Definiowanie warunków użytkownika jest łatwe, a jednak Eksperymentatorzy nie popełnią błędów programistycznych, ale mimo wszystko mogą popełniać błędy logiczne ES T s stic i t a t S Brak czasu? T E U R T ED /

Total gamma energy z warunkiem na czasie przelotu

Problem: Total gamma energy spectrum kwantów opóźnionych (lub natychmiastowych "prompt"), OR or AND list?

Gdzie był błąd?

Self gate nie jest konieczna, ale jest użyteczna The self-gate (bramka własna) jest narzędziem, które uwalnia nas od tworzenia wielu warunków i wielu pośrednich widm w sytuacji, gdy naprawdę potrzebne jest tylko jedno widmo.

Inkrementory definiowane przez użytkownika Brak czasu?

Zastosowanie w eksperymentach z Aktywnym Stoperem Brak czasu?

Active stopper, idea

Active stopper

Active stopper --Ge AS (b-decay) xy FRS (Z, A) Ge AS (implant) xy Time y Zet, zet2, aoq, aoq_sci_corr (Time) x

Mapka implantacji Mapka rozpadów beta Mapka poprawnych dopasowań implantacji do rozpadów

Jak wyznaczyć czas życia? stopper_m_implantation_decay_time_difference_in_miliseconds_when_successful_match stopper_m_previous_decay_time_(for_same_implantation)_in_miliseconds 1) implantowanym jądrem było naprawdę jądro 62Ge, stopper_m_implantation_aoq_matched_with_decay_when_ok stopper_m_implantation_zet_matched_with_decay_when_ok 2) po implantacji jądra 62Ge, był to pierwszy zarejestrowany rozpad beta stopper_m_nr_of_decays_when_ok 3) była to "prawdziwa" implantacja jak wiadomo, po nim może nastąpić drugi rozpad beta ; gdyż powstałe jądro 62 Ga rozpada się do jądra 62Zn z innym czasem połowicznego rozpadu; to znaczy, że jądro nie opuściło danej płytki i nie przeleciało do następnej. stoppers retrieved_implantation_occured_(also)_in_stopper2 M when_decay_matched_ok stoppers retrieved_implantation_occured_(also)_in_stopper3 M when_decay_matched_ok

online, near-line, offline Kilka cech spy-cracow : - Naprawdę online (bez presortu jak ROOT tree) - Oczytywnie zdarzeń z DAQ, lub pliku dyskowego (near-line; 100% of events; szybsze) - Rzeczywiście "elastyczna" analiza. Po 60% czasu wiązki wiedzieliśmy, że odkryliśmy co było zaplanowane, więc zmieniliśmy target i... - Definicje widm i definicje warunków, są zapisywane na dysku w postaci plików tekstowych ( persistent ) - Pracuje na laptopach z Linuksem ludzie zabierali program do ich home laboratories i używali offline - możliwe tworzenie "Root Tree" Czy możliwa jest implementacja tej metody dla innych eksperymentów?...

Dziękuję za uwagę...