A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Alexandre A. P. Suaide Um novo sistema de aquisição de dados para o Laboratório Pelletron/LINAC Alexandre A. P. Suaide.

Apresentações semelhantes


Apresentação em tema: "Alexandre A. P. Suaide Um novo sistema de aquisição de dados para o Laboratório Pelletron/LINAC Alexandre A. P. Suaide."— Transcrição da apresentação:

1 Alexandre A. P. Suaide Um novo sistema de aquisição de dados para o Laboratório Pelletron/LINAC Alexandre A. P. Suaide

2 Motivação Sistemas complexos de deteção –Muitos detetores, muitos parâmetros de deteção (centenas) Detetor de neutrons + detetores de partículas + coincidências –Múltiplos crates de CAMAC O SPM não funciona...

3 Alexandre A. P. Suaide Requisitos Compatível com hardware existente (CAMAC) Arquivo de dados compatível com o sistema atual (L002,.FIL) Suporte a altas taxas de transferência –3-4k eventos/s com 512 parâmetros/evento Suporte a vários crates Grande flexibilidade de histogramação Grande flexibilidade de análise e seleção de eventos Fácil manutenção e potencial para crescimento Interface gráfica –Totalmente acessível a partir de cliques de mouse Programação moderna –c++ orientado a objetos –Desenvolvido utilizando as bibliotecas do ROOT

4 Alexandre A. P. Suaide ROOT – Uma das ferramentas mais poderosas em termos de análise de dados Desenvolvido no CERN especialmente para a comunidade de Física Nuclear Poderosas ferramentas de análise de dados, histogramação, simulação de eventos, desenvolvimento de GUI e desenho Totalmente escrito em c++ –Disponível gratuitamente para várias plataformas windows, linux, AIX, Sun, Alpha, etc –Interpretador e compilador c++ gratuito Amplamente utilizado e testado nos maiores laboratórios e universidades do mundo –CERN, LBL, BNL, FermiLab, LBL, GSI, MSU, USP, etc...

5 Alexandre A. P. Suaide ROOT – Um pouco de propaganda Várias opções de histogramas e gráficos em 1 dimensão

6 Alexandre A. P. Suaide ROOT – Um pouco de propaganda Várias opções de histogramas em 2 dimensões

7 Alexandre A. P. Suaide SPMRoot – um novo sistema de aquisição Baseado em uma versão modificada do driver do CAMAC escrito pelo Ribas –Compatível com o SPM –Buffers de memória maiores –Proteções contra overflow de memória –Habilitação de até 4 crates Uso intensivo do ROOT para GUI, IO, histogramação, etc. Possibilidade de ter um trigger de software Velho e bom EVS/ADAC combo Histogramação feita através de uma rotina em c++ definida pelo usuário –Alta flexibilidade

8 Alexandre A. P. Suaide Estrutura da aquisição de dados SPMRoot CamacIO PelIO ScanRoot PelTools Driver CAMAC ROOT Interface com Histogramaçã o e trigger Pacote de análise de dados IO

9 Alexandre A. P. Suaide Como funciona Idle 100 ms Processa requisição Tem Evento? S Passou trigger? Grava evento histograma 1000 eventos? SS S NN N

10 Alexandre A. P. Suaide Verifica se há evento no buffer Idle 100 ms Processa requisição Tem Evento? S Passou trigger? Grava evento histograma 1000 eventos? SS S NN N Driver do CAMAC (Ribas + algumas modificações) –O driver do CAMAC responde ao LAM –Gera um evento de acordo com o definido pelo usuário (EVS) –Armazena em um buffer de memória Tamanho total de 256 kBytes –Dividido em buffers menores, cujo tamanho é definido pelo usuário »Os dados são transferidos para o programa somente quando há mini-buffers cheios –As modificações envolveram o tamanho do buffer e algumas proteções para overflows que estavam ocorrendo para altas taxas de contagem de eventos muito grandes e múltiplos crates Tem Evento?

11 Alexandre A. P. Suaide Trigger a nível de software Idle 100 ms Processa requisição Tem Evento? S Passou trigger? Grava evento histograma 1000 eventos? SS S NN N Passou trigger? L2Trigger (Level 2) –Executado a nível de software –Decide se o evento vai ser gravado ou não Código programado pelo usuário em c++/ROOT –Limitado somente pela criatividade do usuário –Opções para diminuir o tamanho do arquivo de dados Gravar somente eventos em coincidência Gravar eventos de cuja partícula tenha uma certa massa, Z, etc –Opcional...

12 Alexandre A. P. Suaide Grava evento Idle 100 ms Processa requisição Tem Evento? S Passou trigger? Grava evento histograma 1000 eventos? SS S NN N Gravação de evento –Formato.FIL compatível com SCAN –Sim ou não, depende do usuário –Gravação em disco Fita em fase de implementação –Novidades Divisão do arquivo se ele passar um certo tamanho –100, 200 ou 400 MBytes –Pode ser desabilitado pelo usuário Grava evento

13 Alexandre A. P. Suaide Histogramas Idle 100 ms Processa requisição Tem Evento? S Passou trigger? Grava evento histograma 1000 eventos? SS S NN N Todo evento válido chama a rotina de histogramação –O usuário pode definir, na rotina de histogramação, como e quando um evento é histogramado –Código em c++/ROOT Total liberdade, depende somente da criatividade do usuário –Tempo morto monitorado pelo programa Não há, nesta versão, nenhum controle imposto pelo programa histograma

14 Alexandre A. P. Suaide Iniciando o programa Digite –Spmroot [opções] -d = habilita modo de degub –Imprime o conteúdo de cada um dos eventos, além de outras informações (muito mais lento, afinal é um modo de debug) -c = habilita prompt de comando para o interpretador ROOT/Cint –Propicia acesso a todos os recursos do ROOT e um interpretador c++ (>90% compatibilidade com ANSI c++)

15 Alexandre A. P. Suaide SPMRoot – A interface com o usuário Menu principal Barra de comandos Status Log

16 Alexandre A. P. Suaide SPMRoot – O Menu principal

17 Alexandre A. P. Suaide SPMRoot – Status

18 Alexandre A. P. Suaide Iniciando um run em 4 passos simples Carregar o EVOCarregar as definições de histogramas Ligar modo FILA Iniciar o run

19 Alexandre A. P. Suaide Algumas opções mais avançadas Configurando scalers (máximo 10 módulos de scalers) Tamanho do buffer do CAMAC e número de parâmetros

20 Alexandre A. P. Suaide As opções de DISPLAY Janelas gráficas (Canvas), Browsers, PelTools.

21 Alexandre A. P. Suaide Como fazer histogramas Pequena rotina em c++ –Todo o poder do c++ e do ROOT disponíveis Não precisa compilar –O SPMRoot compila sozinho Mesmo programa pode ser usado offline –Espere pelo ScanRoot Header –Incluir bibliotecas básicas –Definir variáveis globais 4 funções (2 obrigatórias) –bookHistograms() –fillHistograms() –Init() –Finish() Clicar em –File Load Histogram Def.

22 Alexandre A. P. Suaide Visualizando histogramas O TBrowser –Similar ao windows explorer Directories, files, etc. –Display new TBrowser Duplo clique no icone Diretórios SPM_Histograms etc Histogramas (conteúdo dos diretórios)

23 Alexandre A. P. Suaide Visualizando histogramas... Canvas e menus no clique do mouse

24 Alexandre A. P. Suaide Outras opções de visualização Múltiplas telas em uma única janela –Clique com botão direito na janela e Divide Múltiplas janelas –Menu Display new TCanvas

25 Alexandre A. P. Suaide Analisando dados Usando o prompt de comando (RootCint) –Alta flexibilidade Interpretador c++/ROOT Usando o PelTools –Pequena interface gráfica que auxilia, dentre outras coisas Criação de bananas (TCutG) Projeção de histogramas Ajustes de picos, etc –Acesse de Display PelTools Menu

26 Alexandre A. P. Suaide Processando dados offline - ScanRoot Programa desenvolvido em c++/ROOT para processar arquivos.FIL (similar ao SCAN) –digite scanroot Comandos básicos –hac(filename) Carrega arquivo de definição de histogramas (mesmo formato do SPMRoot) –openInput(filename) Abre o.FIL –openOutput(filename,outNumber) Abre um novo arquivo FIL para gravação –loadL2(filename) Carrega definição de trigger de software –saveHist(filename) Grava arquivo de histogramas –go(N) Processa N eventos (N=0 processa o arquivo inteiro) –tools() Abre a janela de PelTools –help()

27 Alexandre A. P. Suaide Velocidade de processamento Arquivo.FIL –3.5 M eventos –Média de 2 parâmetros/evento Criação de 1 espectro bi-paramétrico simples Aqui vale a discussão qual instantâneo é mais rápido

28 Alexandre A. P. Suaide Tamanho do arquivo de histogramas Arquivo de histogramas –3.5 M eventos –1 espectro bi- paramétrico 512 x 512 canais (H32) O ROOT tem grandes vantagens porque os histogramas são gravados de forma mais eficiente enquanto o HIS é totalmente descompactado

29 Alexandre A. P. Suaide Limite de histogramação Arquivo de histogramas –Espectro bi-paramétrico 512 x 512 canais (H32) Detetor de neutrons –Aprox. 200 histogramas HIS –15 2D (512x512) hist. –Request of bytes is larger than maximum Praticamente não há limite físico no ROOT, limitado basicamente pelo sistema operacional –2GB no ROOT v

30 Alexandre A. P. Suaide Limites de aquisição de dados Fração de eventos perdidos –Detetor de nêutrons completo 72 histogramas multicanais 96 histogramas bi- paramétricos 70 parâmetros/evento em média –Micro PIII 1 GHz, 256 MB –Histogramando todos os eventos –Mostrando 1 histograma na tela, atualizando a cada 5 minutos

31 Alexandre A. P. Suaide STATUS Versão 1 disponível –SPMRoot –ScanRoot –PelTools –Driver controlador CAMAC c111A turbo Testado com o detetor de neutrons 1 semana de tomada de dados para a tese do Pedro – 6,7 Li + In, 12 telescópios E gás - E Si -E + 5 monitores de Si Ainda não implementado/testado –IO em fita Vale a pena????? 1 fita hexabyte de 5 GBytes = R$ HD 120 GBytes = R$400 –Múltiplos crates de CAMAC Manual na sala de controle e na web

32 Alexandre A. P. Suaide O Futuro... Testar múltiplos crates –Implementado na teoria... Versão 2 –Otimização de performance Otimização do driver do CAMAC Otimização de alguns métodos do SPMRoot Melhorar a estética de programação –Incluir IO em fita??? –Driver para o controlador CAMAC DSP 6002 –Melhorar a interface??? Depende das sugestões dos usuários –Mais ferramentas de análise no PelTools Além da versão 2 –Incluir processamento paralelo para aumentar performance (?)

33 Alexandre A. P. Suaide Algumas informações úteis –Web site do ROOT –Alguns documentos, cursos, apresentações e tutoriais sobre o ROOT –Manual dos programas mostrados nessa apresentação –Esta apresentação


Carregar ppt "Alexandre A. P. Suaide Um novo sistema de aquisição de dados para o Laboratório Pelletron/LINAC Alexandre A. P. Suaide."

Apresentações semelhantes


Anúncios Google