Monografia Final Helder

67
UNIVERSIDADE ESTADUAL DE SANTA CRUZ HÉLDER CONCEIÇÃO ALMEIDA CÁLCULO DE COEFICIENTES DE CONVERSÃO UTILIZANDO O CÓDIGO MCNPX PARA O FANTOMA MAX ILHÉUS BAHIA 2010

description

Monografia de Hélder Almeida -UESC

Transcript of Monografia Final Helder

Page 1: Monografia Final Helder

UNIVERSIDADE ESTADUAL DE SANTA CRUZ

HÉLDER CONCEIÇÃO ALMEIDA

CÁLCULO DE COEFICIENTES DE CONVERSÃO UTILIZANDO O CÓDIGO

MCNPX PARA O FANTOMA MAX

ILHÉUS – BAHIA

2010

Page 2: Monografia Final Helder

HÉLDER CONCEIÇÃO ALMEIDA

CÁLCULO DE COEFICIENTES DE CONVERSÃO UTILIZANDO O CÓDIGO

MCNPX PARA O FANTOMA MAX

Relatório final de estágio supervisionado

apresentado, para a obtenção do título de

bacharel em Ciência da Computação, à

disciplina Estágio Supervisionado, à

Universidade Estadual de Santa Cruz.

Área de concentração: Ciência da Computação.

Orientador: Prof. Dany Sanchez Dominguez

ILHÉUS – BAHIA

2010

Page 3: Monografia Final Helder

HÉLDER CONCEIÇÃO ALMEIDA

CÁLCULO DE COEFICIENTES DE CONVERSÃO UTILIZANDO O CÓDIGO

MCNPX PARA O FANTOMA MAX

Ilhéus-BA, 16/06/2010

______________________________________

Dr. Dany Sanchez Dominguez

UESC / DCET

(Orientador)

______________________________________

Dr. Paulo Sávio da Silva Costa

UESC / DCET

(Professor)

______________________________________

Esbel Tomás Valero Orellana

UESC / DCET

(Convidado)

Page 4: Monografia Final Helder

DEDICATÓRIA

À minha família e amigos que me apoiaram e não mediram esforços para que eu

chegasse até essa etapa de minha vida, assim como a meus professores e

orientadores que sempre me incentivaram, dedico.

Page 5: Monografia Final Helder

AGRADECIMENTOS

Aos meus professores da formação básica, pelo ensino, disciplina e incentivo que

me foi passado desde os tempos de infância.

Ao Departamento de Ciências Exatas e Tecnológicas da Universidade Estadual de

Santa Cruz que me concedeu a oportunidade da realização do curso.

À Fundação de Amparo à Pesquisa do Estado da Bahia por ter me concedido bolsa

de Iniciação Científica, por duas vezes, incentivando-me a contribuir com a pesquisa

e disseminação do conhecimento na região.

Aos meus professores Esbel Tomás Valero Orellana, Susana Marrero Iglesias e

Felix Mas Milian que acreditaram e desenvolveram o meu potencial na pesquisa

científica e me incentivaram a atuar nesta atividade.

Especialmente ao meu orientador, Dr. Dany Sanchez Dominguez que foi meu

professor e orientador em dois projetos de iniciação científica, diversos projetos de

pesquisa durante toda a graduação, além de orientar-me nesse projeto de conclusão

de curso.

Aos colegas Alexandre Gonzaga dos Santos, Gabriel Falcão da Silva Rios,

Marlesson Rodrigues Oliveira Santana e Pablo Rangel Lopes Silva pelo

companheirismo nas horas de descontração e de estudo, pela companhia nas

viagens para os diversos eventos e o apoio nas disciplinas mais exigentes durante o

curso.

E finalmente à minha família e noiva pelo imenso apoio, ajuda e cooperação.

Especialmente aos meus pais.

Page 6: Monografia Final Helder

"A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original."

Albert Einstein

Page 7: Monografia Final Helder

CÁLCULO DE COEFICIENTES DE CONVERSÃO UTILIZANDO O CÓDIGO

MCNPX PARA O FANTOMA MAX

RESUMO

O uso de radiação ionizante em diversas aplicações está amplamente

difundido na sociedade atual. A exploração destas tecnologias deve ser feita em

condições que garantam a segurança dos trabalhadores, dos usuários e do público

em geral. Do ponto de vista de proteção radiológica, é relevante o uso de técnicas e

metodologias que calculem com precisão a dose absorvida por órgãos e tecidos

radio-sensíveis.

Ao estimarmos a dose absorvida é essencial contar com coeficientes de

conversão que permitam calcular esta grandeza de forma simples e precisa. O

código de Monte Carlo N-Particle eXtended (MCNPX) é amplamente utilizado para

pesquisa nesta área da radioproteção. Este utiliza métodos probabilísticos para

simular a interação da radiação com a matéria. As técnicas de simulação utilizadas

pelo MCNPX requerem muito poder de processamento e memória, tornando-o lento

e possivelmente impraticável.

Este projeto propõe instalar, configurar e medir o desempenho do MCNPX

nos sistemas operacionais Windows e Linux, além de utilizar o código para calcular

os coeficientes de conversão do fantoma anatômico brasileiro MAX comparando-o

com os recomendados pela Comissão Internacional de Proteção Radiológica e com

o fantoma chinês CAM.

Palavras-chave: códigos de Monte Carlo; MCNPX; Coeficientes de conversão;

fantoma MAX.

Page 8: Monografia Final Helder

LISTA DE TABELAS

1. Valores dos fatores de peso da radiação, wR. .................................................. 9

2. Fatores de peso para órgãos e tecidos específicos para o cálculo de

dose efetiva. ..................................................................................................... 9

3. Comparação entre as massas dos órgãos do MAX com as

recomendadas pela ICRP 89. Em negrito estão assinaladas as

diferenças ....................................................................................................... 15

4. Tempo de execução do MCNPX no SO Linux Fedora 9 para testes

seriais (em minutos)........................................................................................ 20

5. Tempo de execução do MCNPX no SO Windows XP para testes seriais

(em minutos). .................................................................................................. 21

Page 9: Monografia Final Helder

LISTA DE FIGURAS

1. Radiações mais ionizantes e seus respectivos poderes de penetração ........... 7

2. Representação do modelo matemático MIRD-5. ............................................ 12

3. Passos para construção de modelo dosimétrico para o corpo inteiro. ........... 13

4. Fantoma MAX (a) vista frontal, (b) vista lateral e (c) corte transversal. .......... 15

5. Comparativo do tempo de execução do MCNPX entre os SO Windows

XP e Linux Fedora 9 para elétrons de 30 MeV. .............................................. 21

6. Comparativo do tempo de execução do MCNPX entre os SO Windows

XP e Linux Fedora 9 para phótons com energia 10 MeV. ............................. 22

7. SpeedUp do MCNPX, de 1 a 8 processadores, ao simular elétrons com

energias 10 e 30 MeV, e 106 e 107 histórias. ................................................ 24

8. SpeedUp do MCNPX, de 1 a 8 processadores, ao simular phótons com

energias 1 e 10 MeV, e 106 e 107 histórias. .................................................. 25

9. Tempo de execução do MCNPX de 1 a 8 processadores, ao simular

elétrons com energias 10 e 30 MeV, e 106 e 107 histórias. ........................... 26

10. Tempo de execução do MCNPX de 1 a 8 processadores, ao simular

phótons com energias 1 e 10 MeV, e 106 e 107 histórias. ............................. 26

11. Geometria de irradiação antero-posterior (AP) simulada neste trabalho. ....... 29

12. Comparação dos CCs da pele na geometria AP entre os fantomas

MAX06, CAM e as recomendações da ICRP 74. ........................................... 30

13. Comparação dos Coeficientes de Conversão do fígado na geometria AP

entre os fantomas MAX06, CAM e as recomendações da ICRP 74. .............. 30

14. Comparação dos Coeficientes de Conversão do esôfago na geometria

AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74. ........ 31

Page 10: Monografia Final Helder

15. Comparação dos Coeficientes de Conversão da lente dos olhos na

geometria AP entre os fantomas MAX06, CAM e as recomendações da

ICRP 74. ......................................................................................................... 31

16. Comparação dos Coeficientes de Conversão dos testículos na geometria

AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74. ........ 32

17. Comparação dos Coeficientes de Conversão dos testículos na geometria

AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74. ........ 32

18. Comparação dos Coeficientes de Conversão dos testículos na geometria

AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74. ........ 33

Page 11: Monografia Final Helder

LISTA DE SIGLAS

ALARA As Low As Reasonably Achievable

CC Coeficiente de Conversão

CAM Chinese Adult Man

ICRP International Commission on Radiological Protection

ICRU International Commission on Radiological Units and Measuraments

INP Input File

LAHET Los Alamos High-Energy Transport

LCC Laboratório de Computação Científica

MAX Male Adult voxel

MCNP Monte Carlo N-Particle

MCNP4C Monte Carlo N-Particle Version 4c

MCNP5 Monte Carlo N-ParticleVersion5

MCNPX Monte Carlo N-Particle eXtended

MPI Message Passing Interface

PVM Parallel Virtual Machine

SO Sistema Operacional

UESC Universidade Estadual de Santa Cruz

UFPE Universidade Federal de Pernambuco

UV Ultra Violeta

VOXEL Volume em Pixel

Page 12: Monografia Final Helder

SUMÁRIO

RESUMO ..................................................................................................... vi

1. INTRODUÇÃO ............................................................................................. 1

1.1. Identificação do Problema ............................................................................ 3

1.2. Objetivos....................................................................................................... 4

1.2.1. Objetivo Geral ............................................................................................... 4

1.2.2. Objetivos Específicos ................................................................................... 4

2. FUNDAMENTOS TEÓRICOS ...................................................................... 5

2.1. Radiação ...................................................................................................... 5

2.1.1. Radiação não-ionizante ................................................................................ 5

2.1.2. Radiação ionizante ....................................................................................... 5

2.2. Grandezas e unidades dosimétricas ............................................................ 7

2.2.1. Dose absorvida ............................................................................................. 8

2.2.2. Dose equivalente .......................................................................................... 8

2.2.3. Dose efetiva .................................................................................................. 9

2.2.4. Fluência ...................................................................................................... 10

2.2.5. Kerma ......................................................................................................... 10

2.3. Coeficientes de conversão ......................................................................... 11

2.4. Modelo antropomórfico matemático ........................................................... 12

2.4.1. Modelo antropomórfico baseado em imagem............................................. 13

2.4.2. O simulador MAX ....................................................................................... 14

2.5. O código de transporte de partículas MCNPX, baseado nométodo

de Monte Carlo ........................................................................................... 16

3. DESEMPENHO E CONFIGURAÇÃO DO MCNPX .................................... 18

3.1. O desempenho do MCNPX ........................................................................ 19

3.1.1. Testes em arquitetura serial ....................................................................... 19

3.1.2. Testes em arquitetura paralela ................................................................... 22

4. CÁLCULO DOS COEFICIENTES DE CONVERSÃO ................................ 28

5. CONCLUSÕES E TRABALHOS FUTUROS ............................................. 34

6. REFERÊNCIAS BIBLIOGRÁFICAS .......................................................... 36

APÊNDICE ................................................................................................. 38

APÊNDICE A - Manual de Instalação do MCNPX 2.6 ................................ 37

Page 13: Monografia Final Helder

1

1. INTRODUÇÃO

A utilização de radiações ionizantes tem inúmeras aplicações na sociedade

moderna, como medicina nuclear, produção de energia, plantas de irradiação e

técnicas nucleares analíticas. Entretanto, a utilização de radiação nestas aplicações

introduz riscos à saúde devido a seus efeitos prejudiciais ao corpo humano. As

agências reguladoras e a comunidade acadêmica trabalham em conjunto para

quantificar os efeitos biológicos da radiação e estabelecer normas e critérios que

salvaguardem trabalhadores, usuários e indivíduos do público em geral.

A manutenção de níveis de radiação ionizante abaixo dos limites

recomendados por normas internacionais é um tema amplamente abordado pela

comunidade científica mundial. A proteção radiológica durante a utilização de fontes

de radiação ionizante na medicina deve seguir uma filosofia de trabalho que preze

pela segurança e qualidade de vida das pessoas envolvidas em todas as etapas de

seu uso. A Comissão Internacional de Proteção Radiológica (ICRP) e a Comissão

Internacional de Unidades e Medidas de Radiação (ICRU) estabelecem que sejam

implantados métodos de otimização que garantam que os trabalhadores e os

membros do público expostos à radiação sejam submetidos aos menores níveis de

radiação possíveis, obedecendo ao princípio ALARA (tão baixo quanto

razoavelmente possível), levando-se em conta fatores sociais e econômicos. O

princípio ALARA é um postulado no qual se afirma que uma vez que não são

totalmente conhecidos os danos causados pela exposição à radiação ionizante em

doses baixas, devem-se manter os níveis de exposição tão baixos quanto

admissíveis, possivelmente exequíveis (VERGARA, 2005)

Prever as doses de radiação recebidas pelos órgãos e tecidos do corpo

humano é uma tarefa complexa. Pesquisas e experimentos para determinar a dose

absorvida diretamente em seres humanos são inaceitáveis. Uma alternativa é

realizar estes testes utilizando modelos ou fantomas que representem bem o corpo

humano, mas este enfoque tem diversas limitações: os fantomas utilizados possuem

pouco detalhamento em relação a pessoas reais, os experimentos são caros e suas

condições de aplicação limitadas. A melhor alternativa é fazer uso de simulações

computadorizadas usando códigos probabilísticos de transporte de partículas. Esses

simuladores requerem modelos matemáticos, conhecidos como fantomas

Page 14: Monografia Final Helder

2

antropomórficos, que consigam representar indivíduos de uma população comum o

mais detalhadamente possível.

Os fantomas antropomórficos são representações computacionais utilizadas

para determinar coeficientes de conversão entre a dose absorvida nos órgãos e

tecidos e grandezas mensuráveis. Esses podem representar a anatomia do corpo

humano, com informações sobre densidade, composição química, forma, tamanho e

localização dos órgãos. Atualmente, os mais utilizados são: o modelo matemático e

o modelo baseado em imagens de tomografia computadorizada ou imagem de

ressonância magnética, chamado de fantoma voxelizado.

Nos últimos anos as agências reguladoras ICRP e ICRU, baseadas em dados

estatísticos recentes, aprimoraram as recomendações para uso de radiações

ionizantes. Especificamente, a recomendação ICRP 103 introduz novos órgãos e

tecidos a serem considerados nos cálculos de doses absorvida e doses efetiva. Em

paralelo, a comunidade acadêmica tem aperfeiçoado os fantomas anatômicos,

visando obter resultados mais precisos. Os modelos anatômicos mais eficazes são

os modelos voxelizados, os quais são compostos por um grande número de cubos

em forma de arranjos tridimensionais. O Brasil é o único país da América Latina que

desenvolveu seus próprios fantomas anatômicos voxelizados, o FAX (Female Adult

voXel) e MAX (Male Adult voXel). Isto é relevante para a radioproteção nacional já

que permite uma caracterização mais detalhada da população brasileira na

prevenção de doses absorvidas. O grande desafio ao utilizarmos fantomas

voxelizados é o elevado custo computacional das simulações. Para contornar esta

limitação, são calculados Coeficientes de Conversão (CCs) que permitem

correlacionar a dose absorvida em órgãos e tecidos com grandezas operacionais

fácies de medir. Neste sentido, a simulação probabilística é utilizada para

determinar os CCs que logo são utilizados para estimar as doses de radiação.

As próximas seções deste trabalho descrevem os objetivos e as etapas da

pesquisa realizada. Estas foram divididas em quatro partes. Primeiramente a revisão

e aprofundamento bibliográfico sobre os principais temas tratados, sendo eles:

proteção radiológica, radiação (ionizante e não ionizante), grandezas e unidades

dosimétricas envolvidas na interação da radiação com a matéria, e o código de

Monte Carlo MCNPX. Em seguida é abordada a instalação e configuração do

MCNPX, assim como medidas de desempenho referentes a este software. Ainda

neste trabalho, são revelados os coeficientes de conversão calculados e a análise

Page 15: Monografia Final Helder

3

comparativa destes com os relatados na ICRP 74 e em outro projeto de pesquisa

envolvendo o fantoma chinês CAM.

1.1. Identificação do Problema

O MCNPX (Monte Carlo N-Particle eXtended) é um dos principais códigos

probabilísticos para simular problemas de transporte de partículas. Através dele é

possível calcular Coeficientes de Conversão (CCs) com grande precisão e diversas

opções de energias e partículas. Porém, este cálculo apresenta elevado custo

computacional e, consequentemente, um intervalo de tempo de execução

considerável. Isso dificulta e, muitas vezes, inviabiliza o uso da ferramenta, pois são

necessários computadores robustos e muito tempo de antecedência para executar

os cálculos. Sendo importante enfatizar que o referido tempo, muitas vezes,

ultrapassa semanas de cálculos ininterruptos para pequenos órgãos e tecidos do

fantoma.

Um dos motivos para esta necessidade de tempo acentuada se deve, muitas

vezes, ao mau aproveitamento dos recursos disponíveis do hardware onde o código

está instalado. Pesquisadores de diversos centros no Brasil e no mundo não

aproveitam todos os recursos disponibilizados pelo software (FOSTER 2004),

acomodando-se à sua instalação padrão, em ambientes não favoráveis à sua

execução. Porém, o próprio código fornece suporte a otimização e portabilidade

entre sistemas e arquiteturas computacionais diferentes, podendo ser executado em

ambientes com computação paralela, aproveitando assim novas tecnologias como

computadores multiprocessados e clusters de computadores. Além disso, é possível

instalá-lo em diversos sistemas operacionais, abrindo campo à pesquisa do sistema

que fornece melhor condições à sua execução. Contudo, para que a personalização

da instalação do MCNPX seja feita de maneira correta e realmente eficiente, é

necessário conhecimento computacional aprofundado e específico sobre sistemas

operacionais e tecnologias de paralelização.

Page 16: Monografia Final Helder

4

1.2. Objetivos

1.2.1. Objetivo Geral

Adquirir competências na utilização de códigos Monte Carlo para simulação

computacional de problemas de transporte de partículas, especificamente ao

trabalhar com o código MCNPX. Podendo assim fornecer valores numéricos

precisos para os CCs do fantoma MAX, permitindo aperfeiçoar os mecanismos de

radioproteção e os protocolos de medicina nuclear nacionais. Além disso, consolidar

os conhecimentos em linguagens de programação, arquiteturas de computadores,

processamento paralelo e computação de alto desempenho, especificamente os

conceitos ligados à implementação, compilação, otimização e execução do código

MCNPX.

1.2.2. Objetivos Específicos

Os objetivos específicos deste trabalho são:

1. Instalar uma versão otimizada do MCNPX em um cluster de computadores;

2. Avaliar o desempenho computacional do código MCNPX nas arquiteturas e

sistemas operacionais mais utilizados pela comunidade científica;

3. Utilizar técnicas de processamento paralelo e computação de alto

desempenho que permitam utilizar o código MCNPX com fantomas

voxelizados de alta resolução com custo computacional aceitável. Espera-se

obter um speedup de aproximadamente 0.5p a 0.9p (seja p o número de

processadores utilizados na simulação) reduzindo o tempo de execução de

problemas seriais de alguns dias para poucas horas;

4. Calcular coeficientes de conversão para estimar a dose absorvida utilizando o

fantoma anatômico brasileiro MAX nos seguintes órgãos: pele, fígado, lentes

dos olhos, esôfago, tireóide, testículos e pulmões;

5. Adquirir conhecimentos adicionais sobre diferentes arquiteturas, sistemas

operacionais de computadores, compiladores e técnicas de computação de

alto desempenho.

Page 17: Monografia Final Helder

5

2. FUNDAMENTOS TEÓRICOS

2.1. Radiação

O conceito de radiação é aplicado a ondas eletromagnéticas ou partículas que

se propagam com alta velocidade e energia. Estas partículas têm carga elétrica e/ou

magnética, e ao interagir com a matéria podem produzir variados efeitos. A radiação

pode ser gerada por fontes naturais ou por dispositivos construídos pelo homem.

As radiações eletromagnéticas mais conhecidas são: luz, micro-ondas, ondas

de rádio AM e FM, radar, laser, raios X e radiação gama. As radiações sob a forma

de partículas, com massa, carga elétrica e carga magnética mais comuns são feixes

de elétrons, prótons e fótons, radiação beta e radiação alfa. Das radiações

particuladas sem carga elétrica, a mais conhecida é o feixe de nêutrons.

A radiação pode ser caracterizada como ionizante e não ionizante; a principal

diferença entre elas é a energia e, portanto sua frequência ou comprimento de onda

(SILVA, 2007).

2.1.1. Radiação não ionizante

A radiação não ionizante é caracterizada por não possuir energia suficiente

para arrancar elétrons dos átomos do meio por onde está se deslocando, mas tem o

poder de quebrar moléculas e ligações químicas. Dessa radiação fazem parte: radio

freqüência, infravermelho e luz visível. Este tipo de radiação não é alvo de estudo

neste trabalho por não causar danos à saúde do ser humano.

2.1.2. Radiação ionizante

A radiação ionizante é definida como aquela que tem energia suficiente para

interagir com os átomos do meio por onde se propaga. Em outras palavras: essa

radiação tem energia para arrancar pelo menos um elétron de um dos níveis de

energia de um átomo do meio por onde está se deslocando. Assim, esse átomo

deixa de ser neutro e passa a ter uma carga positiva, pois o número de prótons se

torna maior que o de elétrons. A radiação ionizante converte o átomo neutro,

tornando-se um íon positivo.

Page 18: Monografia Final Helder

6

A radiação ionizante pode ser classificada em dois grupos: aquela que possui

carga elétrica e a neutra. Alguns tipos de radiação corpuscular como partículas alfa

e beta, elétrons e prótons possuem carga, assim se encontram no primeiro grupo; o

nêutron, sem carga, se enquadra no segundo. Alguns tipos de radiação

eletromagnética também são ionizantes, como os raios UV, X e gama, mas como

não possuem carga também fazem parte da segunda categoria (SILVA, 2007).

As diferenças entre cada tipo de radiação estão no método de produção, no

poder de penetração e na interação com a matéria. Com relação a este último,

podemos afirmar que as partículas eletricamente carregadas interagem diretamente

com a matéria, produzindo ionização direta, já as partículas neutras e os fótons

provocam ionização indireta.

O poder de penetração da radiação ionizante está diretamente relacionado

com a energia inicial que ela tem e com a interação que ela sofre durante seu

movimento. Por exemplo, a partícula alfa possui duas cargas positivas, dessa forma

ela perde energia para os átomos do meio muito rapidamente e isto implica em um

alcance bem pequeno (no ar não ultrapassa alguns centímetros e no corpo humano

chega somente à superfície da pele). Essa partícula também pode ser considerada

pesada em comparação às demais, assim se movimenta em linha reta, e tem alto

poder de ionização, ou seja, ela deposita grande quantidade de energia por

centímetro que percorre (grande densidade de ionização) (SILVA, 2007).

A partícula beta tem apenas uma carga positiva e massa pequena, assim não

se movimenta em linha reta e sua interação com a matéria é menor que a da alfa,

resultando num alcance de aproximadamente 1 metro no ar. O poder de ionização

da partícula beta é mais baixo do que o da alfa e sua densidade de ionização é

baixa.

Os nêutrons são partículas eletricamente neutras, com isso seu poder de

ionização é pequeno e mesmo ionizando o meio por onde estão se propagando,

entretanto seu poder de penetração é muito grande. Materiais ricos em hidrogênio

como a água e a parafina servem como blindagem para os nêutrons.

A ionização que os fótons dos raios X e gama provocam na matéria é indireta,

pois primeiro eles promovem a criação ou a aniquilação de elétrons ou de pósitrons,

que por sua vez ionizam a matéria (reações secundárias).

Page 19: Monografia Final Helder

7

A Figura 1 mostra as quatro radiações mais ionizantes e seu poder de penetração:

Figura 1– Radiações mais ionizantes e seus respectivos poderes de penetração

Os efeitos biológicos das radiações ionizantes ainda estão sendo estudados e

caracterizados, neste sentido as aplicações que utilizam radiação ionizante devem

estar justificadas, isto é, o beneficio da aplicação supera os potenciais danos ao

meio ambiente e a sociedade. Adicionalmente o trabalho com radiação ionizante

esta rigorosamente controlado por normas e critérios internacionais que visam

minimizar os efeitos prejudiciais do uso da radiação.

2.2. Grandezas e unidades dosimétricas

Desde os primórdios da utilização das radiações ionizantes em diversas

aplicações para fins de monitoração de radiação externa1 tem sido desenvolvido um

conjunto de grandezas de proteção radiológica e suas relações. Essas grandezas

são utilizadas na caracterização da radioatividade e dos campos da radiação, na

descrição da interação da radiação com a matéria e na quantificação dos efeitos. A

Comissão Internacional de Unidades e Medidas de Radiação (ICRU) e a Comissão

Internacional de Proteção Radiológica (ICRP) são responsáveis por organizar e

padronizar essas medidas.

Para fins de proteção radiológica a ICRP definiu as grandezas limitantes,

1Fonte de radiação externa ao organismo. Há também a radiação interna, onde o indivíduo ingeriu,

inalou ou absorveu a fonte de radiação.

Alfa

Beta

Gama

Nêutron

Papel

Água

Concreto

Page 20: Monografia Final Helder

8

utilizadas para indicar o risco à saúde humana devido à radiação ionizante; já a

ICRU é responsável pelas grandezas operacionais, que levam em consideração as

atividades de radioproteção. A seguir descrevemos as grandezas limitantes e

operacionais que despertam maior interesse.

2.2.1. Dose absorvida

A grandeza física básica usada em proteção radiológica é a dose absorvida,

DT. Ela é definida como o quociente entre a energia média, , absorvida por um

elemento de volume do material e a massa, , desse volume (ICRP 103, 2008), ou

seja:

1

A dose absorvida é expressa em J/kg no Sistema Internacional de Unidades e

o nome especial para esta unidade é o gray (Gy).

2.2.2. Dose equivalente

Como os efeitos da radiação podem variar com a qualidade (tipo e energia)

da radiação, para uma mesma dose absorvida, foi necessário criar um conceito com

o qual fosse possível comparar os efeitos provocados pelas diferentes qualidades de

radiação. Assim, algumas radiações são mais efetivas do que outras em causar

efeitos estocásticos nos organismos e seres vivos. Para considerar isto, foi

introduzida a grandeza dose equivalente, HT, que é a dose absorvida média em um

órgão ou tecido, (DT,R), multiplicada por um fator de peso adimensional da radiação,

wR, relativo ao tipo e energia da radiação incidente R (ICRP 103, 2007), ou seja:

2

A dose equivalente é expressa em J/kg no Sistema Internacional de

Unidades. A unidade para a dose equivalente recebe o nome especial de sievert

(Sv).

Os fatores de peso da radiação, wR, foram estipulados pela ICRP 60 e são

apresentados na tabelaTabela1.

Page 21: Monografia Final Helder

9

Tabela1- Valores dos fatores de peso da radiação, wR.

Tipos de energia Intervalos de Energias Fator de peso da

radiação, wR

Fótons Todas as energias 1

Elétrons e múons, Todas as energias 1

Nêutrons < 10 keV 5

Nêutrons > 10 keV a 100 keV 10

Nêutrons > 100 keV a 2MeV 20

Nêutrons > 2 MeV a 20 MeV 10

Nêutrons > 20 MeV 5

Prótons, (não de recuo) > 2 MeV 5

Partículas alfa, fragmento de fissão e núcleos pesados

Todas as energias 20

Fonte: REIS JÚNIOR, 2007, p. 08.

2.2.3. Dose efetiva

A dose efetiva, E, é a soma ponderada das doses equivalentes em todos os

tecidos e órgãos do corpo, expressa por:

3

onde wT é o fator de peso do tecido T e HT é a dose equivalente a ele atribuída. No

sistema internacional de Unidades, a dose efetiva é expressa em J/kg, mas recebe o

nome especial de sievert (Sv). Os valores de wT para os órgãos ou tecidos

considerados para o cálculo da dose efetiva, estipulados pela ICRP 103 são

apresentados na Tabela 2.

Tabela 2- Fatores de peso para órgãos e tecidos específicos para o cálculo de dose efetiva.

Tecido ou Órgão Fator de peso do Tecido ou Órgão (wT)

Gônada 0,08

Medula óssea 0,12

Cólon 0,12

Pulmão 0,12

Estômago 0,12

Bexiga 0,04

Mamas 0,12

Page 22: Monografia Final Helder

10

Tecido ou Órgão Fator de peso do Tecido ou Órgão (wT)

Fígado 0,04

Esôfago 0,04

Tireóide 0,04

Pele 0,01

Glândulas salivares 0,01

Cérebro 0,01

Superfície óssea 0,01

Restante* 0,12

* Os órgãos restantes são compostos por: adrenais, tecido extratorácico, vesícula, coração, rins, intestino delgado, nodos linfáticos, mucosa oral, músculo, pâncreas, baço, timo e útero/próstata.

Fonte: CORDEIRO, 2009, p. 24.

2.2.4. Fluência

A fluência, Φ, é o quociente de dN por da, onde dN é o número fótons

incidentes sobre uma esfera de seção de área da, ou seja:

4

Esta variável é facilmente calculada, pois pode ser medida no ambiente

exterior ao órgão e tecido exposto. Não necessitando sujeitar o indivíduo a qualquer

tipo de radiação ionizante.

2.2.5. Kerma

O kerma, K, é o quociente de dEtr por dm, onde dEtr é a soma das energias

cinéticas iniciais de todas as partículas carregadas liberadas por partículas

ionizantes não carregadas no elemento de material de massa dm (ICRP 103, 2008)

ou seja:

5

O Kerma é expresso em J/kg, no Sistema Internacional de Unidades. Assim

como a Fluência esta variável é facilmente calculada, pois pode ser medida no

ambiente exterior ao órgão e tecido exposto

Page 23: Monografia Final Helder

11

2.3. Coeficientes de conversão

Determinar a dose absorvida no corpo humano é uma tarefa complexa, a

realização de experimentos com objetos de estudo reais (pessoas) é inviável por

razões obvias. Uma das alternativas é utilizar fantomas com materiais equivalentes

ao tecido humano e realizar medidas para diversas geometrias de irradiação.

Entretanto existem diversas limitações neste procedimento. É necessário realizar

uma grande quantidade de medidas, posicionando dosímetros nos vários

compartimentos do fantomas. Outra alternativa é utilizar simulação computacional e

códigos de Monte Carlo de transporte de radiação para realizar esta tarefa. Este

enfoque é viável do ponto de vista operacional, entretanto o consumo de recursos

computacionais é muito elevado. Neste sentido é desejável estabelecer uma

correlação entre as grandezas operacionais que podem ser medidas facilmente e a

dose absorvida em órgão e tecidos do corpo humano. Esta correlação é chamada de

coeficientes de conversão (CCs). A fórmula para seu cálculo é apresentada abaixo:

(

)

( )

( )

6

Coeficientes de conversão são dados que correlacionam valores das

grandezas kerma e fluência com a dose efetiva e a dose nos órgãos ou tecidos.

Permitindo assim calcular de forma simples a dose a que um indivíduo estaria

exposto, é evidente que o uso dos CCs introduz uma aproximação (REIS JÚNIOR,

2007).

Para o cálculo de CCs é necessária a utilização de:

um simulador antropomórfico que represente a anatomia do corpo

humano (fantoma);

um código computacional para simular o transporte da radiação nos

órgãos e tecidos, representados pelo simulador antropomórfico, em

diversas condições de irradiações visando a determinação da dose.

Existem dois modelos capazes (modelos que contêm informações sobre a

densidade, composição química, forma, tamanho e localização dos órgãos) de

representar o corpo humano para simulações: os modelos matemáticos e os

modelos baseado em imagens. Ambos são chamados de modelos antropomórficos

e podem ser utilizados junto a códigos computacionais para simular a dose

Page 24: Monografia Final Helder

12

absorvida em órgãos e tecidos do corpo humano como resultado da exposição deste

à radiação ionizante.

2.4. Modelo antropomórfico matemático

No fantoma matemático, os tecidos, os órgãos e o formato do corpo foram

descritos por expressões matemáticas que representavam combinações e

intersecções de planos, elipsoides, cones, cilindros circulares e elípticos e toros

(REIS JÚNIOR, 2007). Este modelo foi baseado nos dados anatômicos da ICRP,

publicação nº. 23, (ICRP 23, 1975) para representar o homem adulto médio e é

conhecido como MIRD-5 (Medical Internal Radiation Dose Committee).

Figura 2 - Representação do modelo matemático MIRD-5.

Fonte: REIS JÚNIOR, 2007, p. 12.

Há modelos matemáticos com características que estão de acordo com as

massas e volumes da anatomia humana. Porém estes modelos possuem limitações

quanto à forma do corpo e dos órgãos internos. Isso porque havia necessidade de

representá-los de forma simplificada para que os códigos de Monte Carlo pudessem

executar as simulações, devido às limitações dos recursos computacionais (tempo

de processamento e espaço de armazenamento). Todavia a anatomia humana é

extremamente complexa para ser realisticamente representada por equações

Page 25: Monografia Final Helder

13

matemáticas simples.

2.4.1. Modelo antropomórfico baseado em imagem

Alternativamente à limitação imposta pela complexidade da anatomia humana

aos simuladores matemáticos, surgiram os modelos baseados em imagens internas.

Denominados fantomas em voxel (Volume em pixel), estes são criado a partir de

uma sequência de imagens digitais de órgãos e tecidos do corpo humano que

mostram áreas de seção, vistas do topo, ao longo do corpo do indivíduo a ser

analisado. Fantomas em voxel, atualmente, são os mais próximos da representação

real do corpo humano, porém para sua utilização encontram-se alguns empecilhos

não fáceis de serem superados.

A qualidade da imagem utilizada na geração do código interfere diretamente

na precisão com que os órgãos são representados no fantoma. As imagens do corpo

são compostas de fatias vistas do topo, as quais possuem espessura, largura e

comprimento da matriz. O voxel é representado pela multiplicação do tamanho do

pixel pela espessura da fatia da imagem, obtendo um elemento tridimensional

(CHAO, 2001). A Figura 3 mostra os passos necessários para a criação de um

modelo dosimétrico a partir de fatias de imagens.

Figura 3 - Passos para construção de modelo dosimétrico para o corpo inteiro.

Fonte: REIS JÚNIOR, 2007, p. 14.

Normalmente as imagens iniciais têm formato quadrado, com 512 x 512

Page 26: Monografia Final Helder

14

pixels. Alguns processos de transformação são aplicados nas imagens para que

estas possuam a forma ideal para uso em dosimetria numérica, os principais são a

segmentação, classificação e reamostragem. Na segmentação aplicam-se rotinas

para interpretar os dados das cores de uma varredura dentro de um tipo de tecido no

corpo. Novas imagens são geradas, agora com o contorno de vários órgãos

facilmente reconhecidos através das diferenças nos tons de cinza. O próximo passo

é definir valores de densidade para cada órgão, para isso são definidos sete tecidos

diferentes para a construção do modelo: tecido pulmonar, tecido mole, pele,

músculo, ossos, medula óssea e ar.

Depois que cada o órgão e tecido é segmentado, um valor de identificação

(ID) específico é atribuído a cada cor. Assim as regiões segmentadas são órgãos e

tecidos onde todos os voxels que pertençam a um órgão ou tecido possuem o

mesmo ID. A reunião de todos estes voxels formam um modelo para a

representação do corpo inteiro, o qual pode ser lido e importado para o código de

Monte Carlo para a simulação do transporte de radiação.

2.4.2. O simulador MAX

A publicação de uma nova série de dados pelo relatório 89 da ICRP, intitulado

Dados Anatômicos e Fisiológicos Básicos para o Uso em Proteção Radiológica:

Valores de Referência foi à motivação para a criação do fantoma MAX (KRAMER,

2003).

O modelo antropomórfico MAX (Figura 4) foi construído a partir de uma base

de dados com 151 imagens de tomografias computadorizadas da varredura de

tronco e cabeça de um paciente com 37 anos de idade, que pesava 70 kg e tinha

uma altura de 1,75 m. Todos os órgãos de risco, exceto a medula óssea, foram

segmentados manualmente por uma técnica que foi desenvolvida no Departamento

de Energia Nuclear da UFPE. Após a segmentação, os volumes dos órgãos e

tecidos foram ajustados para concordar com as massas recomendadas pela ICRP

89. A Tabela 3 exibe a comparação entre a massa dos órgãos do fantoma MAX e a

recomendada pela ICRP 89.

Page 27: Monografia Final Helder

15

Figura 4- Fantoma MAX (a) vista frontal, (b) vista lateral e (c) corte transversal.

Fonte: SANTOS, 2010, p. 20.

Tabela 3– Comparação entre as massas dos órgãos do MAX com as recomendadas pela ICRP 89. Em negrito estão assinaladas as diferenças

Órgão / Tecido ICRP 89 (g) MAX (g)

Tecido adiposo 14600 14591,7 Suprarrenais 14 14,7 Bexiga 50 50 Esqueleto 10500 11371,6 Cérebro 1450 1450 Cólon 670 670 Olhos 15 15,8 Rins 310 310 Fígado 1800 1800 Pulmões 1200 1061,5 Músculo esquelético 29000 31003,8 Esôfago 40 40 Intestino Delgado 1000 1000 Pele 3300 3254,8 Baço 150 150 Testículo 35 34,7 Timo 25 25

Page 28: Monografia Final Helder

16

Órgão / Tecido ICRP 89 (g) MAX (g)

Tireóide 20 19,8 Traqueia 10 14,3 Medula Óssea Vermelha 1170 1200 Pâncreas 140 140 Estômago 400 400 Fonte: SANTOS, 2010, p. 20.

2.5. O código de transporte de partículas MCNPX, baseado no método de Monte Carlo

As técnicas de Monte Carlo aliadas ao crescimento da velocidade dos

computadores têm causado um grande crescimento na resolução de problemas

complexos de radioproteção. Consequentemente a quantidade de publicações

científicas nas áreas médicas e biológicas utilizando o método de Monte Carlo vem

crescendo significativamente.

O método de Monte Carlo pode ser usado para representar um processo

estatístico, como a interação da radiação com a matéria, tendo maior utilidade em

problemas complexos que não podem ser simulados por métodos determinísticos.

No método de Monte Carlo os eventos probabilísticos que representam um processo

estatístico são simulados de forma sequencial.

O processo de amostragem estatística é baseado na seleção de números

aleatórios (SANTOS, 2010). No transporte de partículas da radiação, a técnica de

Monte Carlo consiste em seguir cada partícula, desde a fonte, ao longo de sua vida,

até o seu desaparecimento (escape, absorção etc.).

O código de transporte de partículas MCNP (X-5 Monte Carlo Team, 2003),

desenvolvido em Los Alamos National Laboratory (EUA) e baseado no método de

Monte Carlo, é atualmente um dos códigos computacionais mais utilizados

mundialmente na área de transporte de radiação envolvendo nêutrons, fótons,

elétrons e partículas carregadas tais como prótons, deutérios e partículas alfa. A

possibilidade de trabalhar com geometrias complexas em três dimensões, a

variedade de opções de dados de entrada e a capacidade de trabalhar com diversos

grupos de energia, fazem deste código, uma ferramenta extremamente eficiente no

campo da modelagem de instalações nucleares, blindagem da radiação, física

médica, proteção radiológica, entre outros.

O código simula o transporte de partículas, individual ou coletivamente,

através da matéria. O transporte é feito por meio de processos aleatórios repetitivos

Page 29: Monografia Final Helder

17

utilizando técnicas estatísticas, em modelos previamente determinados, permitindo a

obtenção de soluções de vários problemas que requerem grande poder

computacional devido ao fato de possuírem grande quantidade de eventos

probabilísticos (SANTOS, 2010).

Para ser executado corretamente, o MCNPX e suas bibliotecas precisam

estar instalados e configurados. Ademais, é necessário que o arquivo de entrada

(fantoma) esteja adequado e atenda aos requisitos do software. No arquivo de

entrada (INP) é necessário determinar: tipo de fonte, de detector, configuração

geométrica e condições gerais do sistema desejado, como tamanho, forma, espectro

de energia, composição da fonte de radiação bem como do meio que a radiação irá

interagir e definição da geometria do detector desejado.

Page 30: Monografia Final Helder

18

3. DESEMPENHO E CONFIGURAÇÃO DO MCNPX

O MCNPX pode ser instalado na grande maioria das plataformas

computacionais e sistemas operacionais conhecidos, Mac OS, Windows e

Unix/Linux. Porém em alguns sistemas o elevado nível de dificuldade na instalação e

configuração acaba tolhendo desta ferramenta o uso de maneira mais eficiente e

divulgada.

O software utiliza métodos probabilísticos de grande complexidade para

executar as simulações e apresentar resultados com boa precisão, em contrapartida

o código requer alto custo computacional para consegui-los. Porém com a evolução

da tecnologia têm surgido novos hardwares com grande poder de processamento e

softwares que permitem um melhor aproveitamento dos recursos oferecidos. Como

exemplos existem as novas arquiteturas de processadores com n núcleos de

processamento e as bibliotecas MPI (Message Passinho Interface), utilizadas para

comunicação entre computadores na computação paralela2.

O suporte a processamento paralelo e distribuído foi incorporado a partir da

versão 5 do MCNP. Como biblioteca padrão foi escolhida o MPI, a qual é definida

como melhor opção para uso em clusters homogêneos UNIX/Windows ou

computadores multiprocessados com memória compartilhada. Em acréscimo, o

MCNPX também dá suporte ao uso de PVM (Parallel Virtual Machine), mais indicado

em ambientes com redes heterogêneas de computadores (FOSTER, 2004).

Para este projeto teve-se a disposição um cluster homogêneo do tipo

Beowulf3, composto de nove computadores com sistema operacional (SO) Linux;

além disso, um computador com sistemas operacionais (SO) Windows e Linux para

fazer testes de desempenho entre os SOs.

Primeiramente procurou-se informações sobre o desempenho do MCNPX em

um determinado ambiente computacional. Porém há pouca informação sobre este

2A computação paralela é uma forma de computação em que vários cálculos são realizados

simultaneamente, operando sob o princípio de que grande problemas geralmente podem ser divididos em problemas menores, que então são resolvidos concorrentemente (em paralelo) (ALMASI; GOTTLIEB, 1988). 3Cluster Beowulf são clusters de desempenho escaláveis, baseados numa infraestrutura de hardware

comum, rede privada e software 'open source' (Linux). O 'hardware comum' pode ser qualquer tipo de computador, significando que não é necessário usar equipamentos próprios para cluster, bastando utilizar equipamentos comuns a redes tradicionais e PCs. Definição retirada de http://pt.wikipedia.org/wiki/Aglomerado_Beowulf.

Page 31: Monografia Final Helder

19

aspecto do programa. A grande maioria dos resultados aponta para a instalação e

utilização em ambiente Windows, pois há uma versão do MCNPX que já vem

compilada e otimizada para este sistema operacional. Contudo, ao utilizar esta

instalação padrão foi verificado um gasto de tempo muito grande na realização de

simulações de médio e grande porte. E ainda que só uma parte dos recursos

computacionais disponíveis estava sendo utilizada.

Para o andamento deste projeto foi necessária a execução de um grande

número de simulações. Primeiro para testes de funcionamento e depois para

determinar os CCs, tornando necessários uma maior rapidez e aproveitamento dos

recursos disponíveis. Aproveitando a disponibilidade de clusters de computadores

nos laboratórios e o suporte do MCNPX ao padrão de comunicação de dados em

computação paralela MPI objetivou-se conseguir uma instalação personalizada que

obtive-se bom desempenho nestas máquinas.

3.1. O desempenho do MCNPX

Para que se obtivesse uma instalação otimizada do MCNPX era necessário

executar uma bateria de testes de desempenho. Estes possuíram duas fases

distintas, primeiramente testes em modo serial, usando apenas um único processo,

para descobrir a plataforma mais eficaz ao executar o MCNPX, considerando como

critério o sistema operacional. A outra fase de testes consistiu em medir o

desempenho da execução do MCNPX em modo paralelo, usando diversos

processos simultâneos na resolução de uma tarefa.

3.1.1. Testes em arquitetura serial

Na primeira fase foram feitos testes seriais com quatro faixas de energia: 0.1

MeV, 1 MeV, 10 MeV e 30 MeV, e seis quantidades de histórias: 1,00E+03,

1,00E+04, 1,00E+05, 1,00E+06, 1,00E+07 e 1,00E+08. Foram realizados

experimentos numéricos nos sistemas operacionais Windows XP e Linux Fedora9.

Todos os experimentos foram feitos em máquinas com a configuração de hardware

idêntica. Visando garantir a fidelidade nas comparações entre as plataformas, cada

corrida foi executada no mínimo três vezes para então ser realizada uma análise

Page 32: Monografia Final Helder

20

estatística sobre as tomadas de tempo obtidas. Cada máquina usada nos testes era

composta por um processador Intel(R) Pentium(R) D CPU 2.80GHz, cache L2 com

2048 KB.

Como dito anteriormente, há um arquivo executável do MCNPX para a

plataforma Windows, não sendo necessária nova compilação, pois este executável

seria totalmente customizado para este SO. Já para executá-lo no Linux, é

necessário compilá-lo no sistema, este foi compilado de maneira simples, sem

qualquer diretiva de otimização. O primeiro fato a se observar na execução dos

testes nas plataformas está no fato do Linux permitir a execução do MCNPX com

prioridade máxima, fazendo que este monopolize o processador durante a maior

parte do tempo que está sendo executado. Até mesmo a interface gráfica da

plataforma pode ser desativada para não interferir no processamento. Enquanto no

Windows o mecanismo não é tão eficaz, o sistema de prioridade do Windows se

torna falho com o tempo, deixando às vezes o processador ocioso e liberando pouco

processamento ao MCNPX. Além disso, não é possível desabilitar toda a interface

gráfica e manter todos os recursos disponíveis à simulação, como no Linux.

Durante o ciclo de testes seriais foi confirmada a diferença de desempenho

entre as plataformas. O Linux se mostrou, na maior parte das simulações, mais

eficiente que o Windows, conseguindo um desempenho médio 10% superior na

maioria dos testes. As tabelas Tabela 4 e Tabela 5mostram os tempos de colhidos

de cada execução do MCNPX.

Tabela 4– Tempo de execução do MCNPX no SO Linux Fedora 9 para testes seriais (em minutos).

Quantidade de Histórias

1,00E+03 1,00E+04 1,00E+05 1,00E+06 1,00E+07 1,00E+08

Fótons a 10 MeV

0,502 0,573 1,403 9,751 93,452 923,287

Elétrons a 30 MeV

0,551 0,742 2,528 20,310 198,582 1974,090

Fótons e Elétrons a 10 MeV

0,555 0,628 1,472 9,846 93,286 929,261

Page 33: Monografia Final Helder

21

Tabela 5– Tempo de execução do MCNPX no SO Windows XP para testes seriais

(em minutos).

Quantidade de Histórias

1,00E+03 1,00E+04 1,00E+05 1,00E+06 1,00E+07 1,00E+08

Fótons a 10 MeV

0,532 0,597 1,491 10,457 99,836 990,428

Elétrons a 30 MeV

0,618 0,797 2,805 22,649 221,347 2205,017

Fótons e Elétrons a 10 MeV

0,6005 0,6792 1,5777 10,8107 102,7878 1023,9067

Pode-se ver claramente a diferença de velocidade entre as plataformas.

Simulando o transporte de elétrons a 30 MeV o Linux foi quase 231 minutos mais

rápido que o Windows em um teste com duração aproximada de 16 horas, o que

significa um ganho de mais de 10%. Essa diferença é vista com clareza nas

FigurasFigura 5 e Figura 6.

Figura 5- Comparativo do tempo de execução do MCNPX entre os SO Windows XP e Linux Fedora 9 para elétrons de30 MeV.

-12,00

-10,00

-8,00

-6,00

-4,00

-2,00

0,00

2,00

4,00

1,00E+03 1,00E+04 1,00E+05 1,00E+06 1,00E+07 1,00E+08

Tem

po

( %

)

Histórias

Tempo gasto no processamento de Elétrons

Windows

Linux

Page 34: Monografia Final Helder

22

Figura 6- Comparativo do tempo de execução do MCNPX entre os SO Windows XP e Linux Fedora 9 para fótons com energia10 MeV.

As Figuras Figura 5 e Figura 6 ilustram os comparativos de tempo das

execuções do MCNPX nos sistemas operacionais Windows e Linux. Os gráficos

foram montados com os valores em porcentagem, tomando como valor de

parâmetro o tempo do SO Windows. Assim, este se apresenta sempre com ganho

de tempo constante em 0%. Consequentemente a linha que representa o Linux varia

de acordo com o ganho ou perda de tempo deste SO em relação ao Windows.

Assim quanto maior o ganho de tempo a representação do Linux se encontrará

abaixo e mais distante da linha do Windows.

Nos gráficos Figura 5 e Figura 6 fica evidente o melhor desempenho do Linux,

neste teste sendo representado pelo Fedora9. Sobretudo o Fedora foi mais rápido

na execução de elétrons a 30 MeV, chegando a ser 11% mais veloz em alguns

casos. Os testes executados demonstram a maior eficiência do Linux, sendo

superior ao Windows em todas as tomadas de tempo. Estes testes evidenciaram o

melhor gerenciamento da execução do MCNPX no Linux, e quantificaram o ganho e

a perda de desempenho em cada sistema testado.

3.1.2. Testes em arquitetura paralela

Completadas as tomadas de tempo em serial, foi verificado na literatura sobre

a possibilidade da instalação do MCNPX em clusters de computadores, recorreu-se,

-8,00

-7,00

-6,00

-5,00

-4,00

-3,00

-2,00

-1,00

0,00

1,00

2,00

1,00E+03 1,00E+04 1,00E+05 1,00E+06 1,00E+07 1,00E+08

Tem

po

( %

)

Histórias

Tempo gasto no processamento de Phótons

Windows

Linux

Page 35: Monografia Final Helder

23

então, ao seu manual de instalação, o qual foi utilizado na instalação em ambiente

Windows e Linux no modo serial. No manual há um guia de instalação para

arquiteturas paralelas. Porém ao seguir passo-a-passo deste guia não obteve-se

uma versão do software funcionando corretamente. Ressaltando que o processo de

instalação indicado foi executado em duas distribuições (Fedora9 e Gentoo) do

Linux, sistema operacional baseado em UNIX, e em nenhuma obteve-se sucesso.

Após pesquisa exaustiva e diversas tentativas e erros, foi-se selecionado

materiais de diversas fontes (fóruns, livros, tutoriais on-line), os quais juntamente

com conhecimento acumulativo sobre possíveis erros e passos errados na

instalação, geraram um manual de instalação (Apêndice A). Este é capaz de guiar,

de maneira correta e unificada pelos principais passos para a instalação e

configuração do MCNPX em ambiente Windows e Linux, neste último com a

possibilidade de instalação paralelizada utilizando MPI.

Na segunda fase os testes foram executados em máquinas paralelas com a

energia dividida agora em 3 faixas: 1 MeV, 10 MeV e 30 MeV. Devido a pouca

diferença de desempenho medido na primeira fase entre as quantidades de energia

de 0.1 MeV e 1 MeV, optou-se por testar apenas as outras energias. Em relação à

quantidade de histórias foram consideradas três alternativas: 1,00E+05, 1,00E+06 e

1,00E+07. Os experimentos foram realizados utilizando o Gentoo Linux 64 bits em

um cluster semi-homogêneo composto por oito máquinas. Sendo que quatro destas

possuem, cada, um processador Intel(R) Core(TM)2 Duo CPU E6550 @ 2.33GHz,

cache L2 com 4096 KB. Outras duas possuem processador Intel(R) CPU 2160 @

1.80GHz e cache L2 com 1024 KB. Uma delas com um processador Intel(R)

Pentium(R) Dual CPU E2140 @ 1.60GHz e cache L2 com 1024 KB. E a última com

um processador Intel(R) Pentium(R) D CPU 2.80GHz e cache L2 com 2048 KB.

As características da técnica de paralelização do MCNPX consistem em criar

n processos sendo que 1 é o processo mestre, que divide e sincroniza a

comunicação entre os n-1 processos escravos restantes. O nó mestre divide o

código para ser processado em n-1 partes e gerencia a junção de todas as partes

novamente.

Diferenças na configuração de máquinas que pertencem a um cluster

interferem diretamente no seu bom aproveitamento, no que diz respeito à

distribuição e balanceamento da carga. Mas apesar desta questão o desempenho

do MCNPX ao ser executado em paralelo foi satisfatório, conseguindo speedup

Page 36: Monografia Final Helder

24

linear em boa parte dos testes. O speedup é a razão do tempo de execução da

aplicação em um processador pelo tempo de execução em N processadores. Assim

quanto maior for o valor do speedup, maior foi à eficiência na execução paralela do

aplicativo.

As Figuras 7 a 10 mostram o desempenho do MCNPX quando executado no

cluster com 1, 2, 4 ou 8 processadores (sendo um processo por máquina) e o

speedup conseguido nos testes. Como era esperado só há ganho de desempenho

na execução paralela quando o problema a ser simulado demanda grande poder

computacional e um longo tempo de processamento. Sendo assim é mais indicado o

uso de máquinas paralelas para o MCNPX em problemas que se executam por pelo

menos algumas horas em arquitetura serial, o que acontece na grande maioria das

simulações.

Figura 7- SpeedUp do MCNPX, de 1 a 8 processadores, ao simular elétrons com energias 10 e 30 MeV, e 106 e 107 histórias.

1

2

3

4

5

6

7

8

1 2 3 4 5 6 7 8

Sp

eed

up

Quantidade de Processadores

Speedup ao Simular Elétrons no MCNPX

Ideal

Elétrons 10 MeV (1x10⁶ histórias)

Elétrons 10 MeV (1x10⁷ histórias)

Elétrons 30 MeV (1x10⁶ histórias)

Elétrons 30 MeV (1x10⁷ histórias)

Page 37: Monografia Final Helder

25

Figura 8- SpeedUp do MCNPX, de 1 a 8 processadores, ao simular fótons com energias 1 e 10 MeV, e 106 e 107 histórias.

Ao observar as figuras Figura 7 e a Figura 8 nota-se que quanto maior a

quantidade de histórias (1,00E+07) maior o speedup alcançado. Isso se deve ao

fator de balanceamento onde quanto maior for o número de repetições executados

por cada nó, sem comunicação entre eles, maior será o speedup, Já que o maior

fator limitante no desempenho dos clusters é a comunicação entre os nós.

As figuras abaixo relacionam o tempo demandado pela execução do MCNPX

com quantidades de processadores, ou máquinas, diferentes.

1

2

3

4

5

6

7

8

1 2 3 4 5 6 7 8

Sp

eed

up

Quantidade de Processadores

Speedup ao Simular Fótons no MCNPX

Ideal

Fótons 1 MeV (1x10⁶ histórias)

Fótons 1 MeV (1x10⁷ histórias)

Fótons 10 MeV (1x10⁶ histórias)

Fótons 10 MeV (1x10⁷ histórias)

Page 38: Monografia Final Helder

26

Figura 9- Tempo de execução do MCNPX de 1 a 8 processadores, ao simular elétrons com energias 10 e 30 MeV, e 106 e 107 histórias.

Figura 10- Tempo de execução do MCNPX de 1 a 8 processadores, ao simular fótons com energias 1 e 10 MeV, e 106 e 107 histórias.

As figuras Figura 9 e Figura 10 mostram a curva de tempo em relação à

quantidade de processadores na execução problema. É possível identificar que

0

50

100

150

200

250

300

350

400

450

500

1 2 3 4 5 6 7 8

Tem

po

Quantidade de Processadores

Tempos ao Simular Elétrons no MCNPX

Elétrons 10 MeV (1x10⁶ histórias)

Elétrons 10 MeV (1x10⁷ histórias)

Elétrons 30 MeV (1x10⁶ histórias)

Elétrons 30 MeV (1x10⁷ histórias)

0

50

100

150

200

250

300

1 2 3 4 5 6 7 8

Tem

po

Quantidade de Processadores

Tempos ao Simular Fótons no MCNPX

Fótons 1 MeV (1x10⁶ histórias)

Fótons 1 MeV (1x10⁷ histórias)

Fótons 10 MeV (1x10⁶ histórias)

Fótons 10 MeV (1x10⁷ histórias)

Page 39: Monografia Final Helder

27

quanto mais demorada for a execução do MCNPX maior é vantagem ao utilizar uma

grande quantidade de processadores.

O cluster usado nos testes do MCNPX está configurado visando o aumento

de desempenho do MCNPX, nele está instalado o compilador Intel para linguagem C

e Fortran versão 10 com suas bibliotecas atualizadas. O compilador está instalado

com a versão mais nova e com diretivas de otimização para cada máquina. Além do

compilador Intel, para aproveitar a opção de paralelismo do MCNPX foi instalada o

MPICH2 com a versão mais nova de todas as suas bibliotecas. Assim o LCC agora

obtém uma versão personalizada do código MCNPX que alcança o máximo

desempenho na infraestrutura de hardware disponível.

Page 40: Monografia Final Helder

28

4. CÁLCULO DOS COEFICIENTES DE CONVERSÃO

Os CCs são uma alternativa confiável e barata para estimar as doses

absorvidas por órgão e tecidos radio-sensíveis do corpo humano na presença de

radiação ionizante. Uma vez conhecidos os CCs podemos medir grandezas

operacionais como a Kerma e a Fluência, e em seguida e a partir destas medidas

estimar a dose em órgãos e tecidos.

Para calcularmos os CCs seguimos o processo inverso, utilizamos um código

de simulação de Monte Carlo e um fantoma detalhado do corpo humano.

Realizamos uma simulação probabilística do transporte de radiação e

correlacionamos as doses absorvidas em órgão e tecidos com as grandezas

operacionais. Esta metodologia introduz aproximações que podem comprometer a

precisão dos CCs computados. Entre estas aproximações estão: o detalhamento e

precisão do fantoma utilizado, o código computacional utilizado e a precisão das

simulações, geralmente ligada ao número de histórias de cada partícula.

Outro problema é que os CCs caracterizam o homem de referência, isto é um

homem com estatura, peso e complexão, que refletem a media da população

mundial. Consequentemente, numerosos grupos étnicos estão muito distantes deste

homem de referência, para aliviar esta situação alguns países desenvolvem seus

próprios fantomas que aproximam melhor sua população. Entre estes países

encontra-se Brasil que desenvolveu os fantomas MAX e FAX (KRAMER, 2003;

KRAMER, 2004).

O cálculo dos CCs é uma tarefa que exige alto custo computacional em

termos de quantidade de memória e tempo de processamento. Este alto custo é

motivado pela necessidade de fantomas detalhados, acompanhamento de um

número elevado de partículas, códigos probabilísticos que considerem reação

secundaria. Também é necessário considerar diferentes partículas e varias

geometrias de irradiação.

Nesta seção apresentamos os CCs para o fantoma brasileiro MAX06 para

fótons e elétrons secundários para os principais órgãos e tecidos radio-sensíveis. O

código computacional utilizado é o MCNPX e as simulações foram realizadas no

cluster do LCC. As doses absorvidas médias em órgãos foram calculadas para uma

irradiação simulada de corpo inteiro com um feixe de fótons e elétrons

Page 41: Monografia Final Helder

29

monoenergéticos de energias que variam de 10 keV a 10 MeV. O feixe incide na

direção anteroposterior (AP) do simulador do corpo humano, considerada a mais

crítica (ZANKL, et al.,1997). Essa geometria de irradiação é mostrada na Figura 11.

Figura 11– Geometria de irradiação anteroposterior (AP) utilizada para calcular os coeficientes de conversão neste trabalho.

As figuras Figura 12 a Figura 18 ilustram os coeficientes calculados durante o

projeto para os órgãos e tecidos: pele, fígado, esôfago, lentes dos olhos, testículos,

tireóide e pulmões. Os resultados obtidos para o MAX são comparados com os CCs

recomendados pela ICRP 74 (ICRP 74, 1996) e os publicados para o fantomas de

voxel chinês CAM (Chinês Adult Man) (LIU, 2009). Os CCs recomendados pela

ICRP 74 foram calculados utilizando o fantomas matemático MIRD-5 e

desconsiderando os elétrons secundários na simulação.

Page 42: Monografia Final Helder

30

Figura 12– Comparação dos CCs da pele na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

Figura 13 - Comparação dos Coeficientes de Conversão do fígado na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

0,00E+00

2,00E-01

4,00E-01

6,00E-01

8,00E-01

1,00E+00

1,20E+00

10

15

20

30

40

50

60

70

80

10

015

020

030

040

050

060

080

010

00

20

00

40

00

60

00

80

00

10

000

H/K

ar

(Sv

/Gy)

Fótons + elétrons (keV)

PELE

MAX_06

ICRP74

CAM

0,00E+00

2,00E-01

4,00E-01

6,00E-01

8,00E-01

1,00E+00

1,20E+00

1,40E+00

1,60E+00

1,80E+00

10

15

20

30

40

50

60

70

80

10

015

020

030

040

050

060

080

010

00

20

00

40

00

60

00

80

00

10

000

H/K

ar

(Sv

/Gy)

Fótons + elétrons (keV)

FÍGADO

MAX_06

ICRP74

CAM

Page 43: Monografia Final Helder

31

Figura 14 - Comparação dos Coeficientes de Conversão do esôfago na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

Figura 15 - Comparação dos Coeficientes de Conversão da lente dos olhos na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

0,00E+00

2,00E-01

4,00E-01

6,00E-01

8,00E-01

1,00E+00

1,20E+00

1,40E+00H

/Kar

(Sv

/Gy)

Fótons + elétrons (keV)

ESÔFAGO

MAX_06

ICRP74

CAM

0,00E+00

2,00E-01

4,00E-01

6,00E-01

8,00E-01

1,00E+00

1,20E+00

1,40E+00

1,60E+00

1,80E+00

H/K

ar (

Sv/G

y)

Fótons + elétrons (keV)

LENTE DOS OLHOS

MAX_06

ICRP74

CAM

Page 44: Monografia Final Helder

32

Figura 16- Comparação dos Coeficientes de Conversão dos testículos na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

Figura 17- Comparação dos Coeficientes de Conversão dos testículos na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

0,00E+00

5,00E-01

1,00E+00

1,50E+00

2,00E+00

2,50E+00H

/Kar

(Sv

/Gy)

Fótons + elétrons (keV)

TESTÍCULOS

MAX_06

ICRP74

CAM

0,00E+00

5,00E-01

1,00E+00

1,50E+00

2,00E+00

2,50E+00

H/K

ar (

Sv/G

y)

Fótons + elétrons (keV)

TIREÓIDE

MAX_06

ICRP74

CAM

Page 45: Monografia Final Helder

33

Figura 18- Comparação dos Coeficientes de Conversão dos testículos na geometria AP entre os fantomas MAX06, CAM e as recomendações da ICRP 74.

Observando as Figuras 12 a 18 podemos constatar que de forma geral existe

uma boa concordância entre os CCs obtidos para o MAX06, os recomendados pela

ICRP 74 e os publicados para CAM. As maiores diferenças aparecem para a pele e

a lente dos olhos a altas energias, estas diferenças estão justificadas nas

aproximações do MIRD-5 para estes tecidos e na consideração da ICRP 74 dos

elétrons secundários na simulação. Entre os fantomas de voxel MAX06 e CAM

existe uma boa concordância em todos os tecidos e órgão considerados, o que

mostra que as simulações realizadas refletem o estado da arte nesta área de

pesquisa.

0,00E+00

2,00E-01

4,00E-01

6,00E-01

8,00E-01

1,00E+00

1,20E+00

1,40E+00

1,60E+00

H/K

ar (

Sv/G

y)

Fótons + elétrons (keV)

PULMÕES

MAX_06

ICRP74

CAM

CMP

Page 46: Monografia Final Helder

34

5. CONCLUSÕES E TRABALHOS FUTUROS

Este trabalho de pesquisa resultou na instalação e configuração

personalizada do MCNPX em Windows e Linux, em uma versão para o cluster do

Laboratório de Computação Científica, e em um manual de instalação completo em

sistemas Linux. Também foram feitas medidas e comparações do desempenho do

MCNPX entre os ambientes onde este foi instalado, sistemas com execução serial,

computador comum (monoprocessado); e com computação paralela, clusters de

computadores (multiprocessados).

Os testes evidenciaram o melhor desempenho do MCNPX em Linux. Os

tempos de execução neste SO foram, em média, 10% inferiores em relação ao

Windows. Os resultados foram ainda mais surpreendentes em se tratando da

execução paralela. Utilizando deste recurso foi confirmado speedup na média de

0.88p, onde p representa a quantidade de processadores. Estes valores comprovam

um aumento de aproximadamente 88% no desempenho em relação à execução

serial, para cada processador adicionado ao cluster.

Estas conclusões incentivam as pesquisas no acréscimo da utilização deste

software para simulação computacional em radioproteção. O estudo do seu

desempenho e a sua instalação otimizada tornara sua utilização eficiente,

conseguindo resolver, em horas, problemas de simulações que antes demandavam

dias.

Como complemento foram calculados os coeficientes de conversão para

estimar a dose equivalente nos órgãos mais radio-sensíveis do fantoma MAX06,

listados na ICRP 60. Os valores H/Kar, crescem com o aumento da energia,

alcançando um máximo entre 80 keV e 100 keV, e, então diminuem lentamente com

o acréscimo de energia do fóton. Essa variação pode ser explicada pela forte

tendência do fóton de ser espalhado com energia em torno de 80 keV (ZANKL et.

al., 1997).

Os valores de CCs computados foram comparados com os recomendados e

utilizados pela ICRP 74 e com os calculados para o fantomas chinês CAM, visando

comprovar a precisão e eficiência da simulação e do fantoma MAX06. Os CCs para

a dose equivalente foram calculados para a geometria de irradiação AP. O erro

médio encontrado para esta geometria foi 9,8%.

Page 47: Monografia Final Helder

35

Os resultados alcançados permitem concluir que o fantoma MAX06

juntamente com o código de Monte Carlo MCNPX estão capacitados para calcular

doses equivalentes em órgãos ou tecidos, pelo fato de apresentarem razoável

concordância com os dados obtidos para outros modelos matemáticos e de voxels

existentes na literatura (ICRP 74 referencia ao CAM). Os fantomas antropomórficos

de voxels, devido a sua representação mais realística da anatomia humana,

possivelmente substituirão os fantomas matemáticos em um futuro não muito

distante.

Trabalhos futuros serão executados visando calcular os CCs para as outras

geometrias de irradiação no fantoma MAX: postero-anterior (PA), lateral esquerda

(LLAT), lateral direita (RLAT), rotacional (ROT) e isotrópica (ISO). Posteriormente,

também calcular os CCs para o fantoma feminino FAX06 e outros fantomas mais

modernos como MASH e o FASH (KRAMER, 2010).

Page 48: Monografia Final Helder

36

6. REFERÊNCIAS BIBLIOGRÁFICAS

ALMASI, G.S.;GOTTLIEB, A. Highly Parallel Computing. 1. Ed. Estados Unidos: Menlo Park, CA (USA): Benjamin-Cummings Pub. Co, janeiro de 1988. 519 p.

BOZKURT, A.Assessment of Organ Doses from Expousure to Neutrons Using the Monte Carlo Technique and an Image-Based Anatomical Model. Doctor Thesis, Rensselaer Polytechnic Institute Troy. New York, 2000.

CHAO, T. The Development and Aplication of a Tomographic Whole-Body Model for Monte Carlo Organ Dose Calculation. DoctorThesis, RensselaerPolytechnicInstitute Troy, New York, 2001.

CORDEIRO, T. P. Vieira. Cálculo dos Coeficientes de Conversão para Dose Efetiva para Nêutrons Utilizando Simulador Antropomórfico de Voxels. Rio de Janeiro: UFRJ/COPPE, 2009. 97 p.

FOSTER, R. Arthur. et. al. MCNP(TM) Version 5.Nuclear Instruments and Methods in Physics Research Section B: Beam Interactions with Materials and Atoms. Janeiro de 2004.

ICRP 60, Recommendations of the International Commission on Radiological Protection. International Commission on Radiological Protection. Pergamon Press. Oxford, 1991.

ICRP 60, Recommendations of the International Commission on Radiological Protection. International Commission on Radiological Protection. Pergamon Press. Oxford, 1991.

ICRP 74, Conversion Coefficients for use in Radiological Protection Against External Radiation. International Commission on Radiological Protection. Pergamon Press, Oxford, 1996.

ICRP 103, The 2007 Recommendations of the International Commission on Radiological Protection. International Commission on Radiological Protection. Pergamon Press. Oxford, 2007.

KRAMER, R. et. al. All About MAX: a Male Adult Voxel Phantom For Monte Carlo Calculation in Radiation Protection Dosimetry. Phys. Med. Biol., 48, 1239-1262, 2003.

KRAMER, R. et. al. All About FAX: a Female Adult Voxel Phantom For Monte Carlo Calculation in Radiation Protection Dosimetry. Phys. Med. Biol., 49, 5203-5216, 2004.

KRAMER, R. et. al. FASH and MASH: female and male adult human phantoms based on polygon mesh surfaces: I. Development of the anatomy. Phys. Med. Biol. 55 133, 2010

Page 49: Monografia Final Helder

37

LIU, Liye. et.al. Organ dose conversion coefficients on an ICRP-based Chinese adult male voxel model from idealized external photons exposures.Phys. Med. Biol. 54, 6645–6673, 2009.

PELOWITZ, Denise B. MCNPXTM USER’S MANUAL: Version 2.6.0. 1. Ed. 2008. 549 p.

REIS JÚNIOR, Juraci P. Cálculos dos Coeficientes de Conversão para Dose Efetiva em Termos do Kerma no Ar para Fótons Utilizando Simulador Antropomórfico de Voxels e o Código MCNPX. Rio de Janeiro: COPPE, 2007. 74 p.

SANTOS, L. A. M. Fatores de atenuação em termos da dose efetiva para feixes de raios X utilizado em radiodiagnóstico. Rio de Janeiro: UFRJ/COPPE, 2010. 64 p.

SILVA, Cely P. da. Como funciona a radiação. How Stuff Works: como tudo funciona. Conteúdo on-line. Publicado em 23 de novembro de 2007 (atualizado em 10 de dezembro de 2007). Disponível em: <http://ciencia.hsw.uol.com.br/radiacao.htm>. Acesso em15 de junho de 2010.

SILVA, G. M. Guia Foca GNU/Linux.©Copyleft. Conteúdo on-line. 2008. Disponível em: < http://focalinux.cipsga.org.br/>. Acesso em 08 de junho de 2010.

SOLCHENBACH, K. Grid applications on distributed memory architectures: Implementation and evaluation. Parallel Computing. 3 ed. Volume 7. Setembro de 1988.

VIEIRA, José W. Construção de um modelo computacional de exposição para cálculos dosimétricos utilizando o código Monte Carlo EGS4 e fantomas de voxels. Recife: O Autor, 2004. 88 p.

X-5 Monte Carlo Team, 2003. MCNP – A General Monte Carlo N-Particle Transport Code, Version5, Volume I: Overview and Theory, LA-UR-03-1987. Los Alamos NationalLaboratory, USA.

VERGARA, M. Dosis al feto en radiodiagnostico. Rev. chil. radiol.; Volume 1, 2005.

ZANKL, M. et. al. The Calculation of Dose from External Photon Expousures Using Reference Human Phantoms and Monte Carlo Methods: Part. VII. Organ doses due to parallel and Environmental Exposures Geometries GSF-Report, agosto de 1997.

Page 50: Monografia Final Helder

38

APÊNDICE

APÊNDICE A - Manual de Instalação do MCNPX 2.6

Page 51: Monografia Final Helder

39

Universidade Estadual de Santa Cruz

Departamento de Ciências Exatas e Tecnológicas

Ciência da Computação NBCGIB –LCC

MANUAL DE INSTALAÇÃO DO MCNPX

Código Monte Carlo N-ParticleeXtended Versão 2.6

Autor:

Hélder Almeida

Ilhéus, BA 25 de Setembro de 2009

Page 52: Monografia Final Helder

40

SUMÁRIO

1. DESEMPENHO DOS SISTEMAS OPERACIONAIS

O objetivo do projeto foi descobrir em qual sistema operacional o MCNPX

obteria o melhor desempenho na sua execução. Sendo assim após instalação no

Windows XP, Fedora9 e Gentoo ficou comprovado que a instalação do MCNPX 2.6

no Windows XP, apesar de ser a mais fácil, teve o pior desempenho, obtendo

tempos para as simulações, em média, 12% mais lenta que o mais rápido, o SO

Gentoo. O Fedora9 conseguiu tempos muito próximos aos do Windows XP nos

resultados.

2. CONFIGURAÇÕES ESPECIAIS

Antes de começar a instalação é necessário prestar atenção a algumas

configurações especiais que podem ser necessárias para que o MCNPX execute as

simulações de maneira correta.

O MCNPX vem com algumas limitações que em alguns casos devem ser

corrigidas para atender algumas simulações, entre as principais limitações estão o

valor de apenas 100 tallies para as simulações e máximo de 20 detectores. Para

modificar estes valores o processo é simples, apenas modificar as respectivas

variáveis no código fonte adicionando os valores desejados. Para facilitar este

processo, abaixo seguem encontrar as principais variáveis para fazer as

modificações.

Atenção! Para simular os arquivos do FAX e MAX 06 com todo o corpo é

necessário modificar apenas o valor da variável “NTALMX” para pelo menos 200,

todas as outras podem continuar com seus valores padrões.

1. NTALMX – determina o número máximo de tallies para as simulações.

Onde encontrar: na linha 15 do arquivo “src/mcnpx/mcnpf/IMCN_jc.F”:

integer(kindi),parameter :: ntalmx = 100 !/*mid5e 2*/

2. MXDT – define a quantidade de detectores:

Page 53: Monografia Final Helder

41

Onde encontrar: na linha 72 do arquivo

“src/mcnpx/mcnpf/GLOBAL1_zc.F”:

integer(kindi), parameter :: mxdt = 20!/*mgp5e48*/

3. SISTEMA OPERACIONAL WINDOWS XP

Apesar de mais lento o Windows XP tem a grande vantagem da facilidade na

instalação. Isso se deve ao fato do código já vir compilado e pronto para executar.

Basta apenas algumas etapas de configuração para que tudo esteja pronto.

Observando este aspecto, é altamente indicada a instalação do MCNPX em

ambiente Windows para execução de pequenas simulações com propósito de testar

arquivos de entrada e outras características que não necessitam, em primeiro lugar,

de melhor desempenho.

3.1. InstalaçãoPadrão

O MCNPX já vem previamente compilado para plataforma Windows, sendo

que sua instalação se dá apenas por copiar a estrutura de diretórios, juntamente

com as bibliotecas e executáveis para uma pasta de escolha do usuário.

Os próximos passos exemplificam a instalação e uso do MCNPX no Windows XP:

1. Localize os arquivos compilados e compactados do MCNPX, geralmente

nomeados com “Win32.zip”, assim como o arquivo “DATA.tar.gz”

contendo as bibliotecas;

2. Crie uma pasta “MCNPX” em um drive com espaço suficiente ~3GB ;

3. Descompacte o arquivo “Win32.zip” dentro da pasta “MCNPX”.

Dependendo da versão do arquivo pode ser criada outra pasta que

contenha os subdiretórios \Bind e \Data. Se acontecer, simplesmente

mova estes subdiretórios de volta para a pasta “MCNPX”;

4. Agora descompacte o arquivo “Data.tar.gz” extraindo os arquivos dentro

da pasta “MCNPX\Data”. Caso não exista um arquivo chamado “xsdir”

neste subdiretório, então copie “xsdir1” para“xsdir”;

5. Assumindo que o diretório do MCNPX tenha sido criado no drive C:,

defina a variável ambiente “DATAPATH” para o endereço

Page 54: Monografia Final Helder

42

“C:\MCNPX\Data\”; e acrescente à variável “PATH” o caminho

“C:\MCNPX\BIN”;

6. O MCNPX está pronto para ser utilizado, bastando para isso abrir o

Prompt de Comando do Windows e executar:

C:>mcnpxinp=test ...

3.2. Recompilando

Para modificar o código e/ou recriar os executáveis será necessário ter

instalado o compilador Compaq Visual Fortran (CVF – versão 6.1 ou superior) ou o

compilador Intel (Versão 8.0 ou superior). Com estes compiladores já instalados

deve-se seguir estes passos:

1. Localize os arquivos do código fonte do MCNPX, geralmente nomeados

com “vXXX.tar.gz”.

2. Crie uma pasta “MCNPX” em um drive com espaço suficiente ~3GB).

Descompacte o arquivo “vXXX.tar.gz” dentro do diretório “MCNPX”.

3. Abra o Prompt de Comando, crie um diretório para construção do MCNPX

e navegueaté este.

mkdirmcnpx_bld cdmcnpx_bld ..\mcnpx\configure

O arquivo em lote “configure” está localizado dentro do diretório criado no

passo 2. Existem 3 opções para o comando configure:

I8 – Constrói uma versão compatível com inteiros de 8 bytes.

MPI – Constrói uma versão para MPICH.

CVF- Constrói uma versão usando o compilador CVF.

A opção padrão (quando as opções acima não são usadas) é compilar o

código usando o compilador Intel. Exemplificando, para construir uma versão do

MCNPX utilizando inteiros de 8 bytes e com suporte a MPICH o comando deveria

ser:

..\MCNPX\configure I8 MPI

“O manual do MCNPX informa que o compilador Intel produz um executável

Page 55: Monografia Final Helder

43

cerca de 25% mais veloz que os executáveis do CVF.”

Depois de executar o comando configure alguns arquivos específicos para

uma compilação para Windows serão descompactados.

4. Assumindo que o diretório do MCNPX tenha sido criado no drive

C:,acrescente à variável “PATH” o caminho “C:\MCNPX\BIN”.

5. Agora pode-se executar o GNU Make digitando “MAKE” no prompt de

Comando:

cdmcnpx_bld cdsrc\Test make

6. O MCNPX está pronto para ser utilizado, bastando para isso abrir o

Prompt de Comando do Windows e executar:

C:>mcnpxinp=test ...

3.3. Dados Cross–section

Todas as bibliotecas adicionais necessárias para simular determinados tipos

de partículas (Bertin, etc.) devem ser adicionadas no diretório “MCNPX\Data”.

4. SISTEMA OPERACIONAL LINUX (FEDORA 9 + GENTOO + DEBIAN)

No SO Linux o MCNPX precisa ser compilado para que funcione

corretamente. Após alguns testes, ficou clara a diferença de desempenho entre as

plataformas (32 e 64 bits), sendo o desempenho da plataforma 64 bits sempre

superior.

As distribuições Linux abordadas neste manual são Fedora9 e GENTOO.

4.1. Instalação no Fedora9 (serial)

O Fedora9 não obteve resultados de desempenho muito superiores aos do

Windows XP, e ainda foi o SO onde a instalação do MCNPX deu mais trabalho,

devido à falta de bibliotecas para os compiladores. Contudo neste foi feito a maior

Page 56: Monografia Final Helder

44

parte da bateria de testes seriais (sem MPICH), devido à disponibilidade de

equipamentos na data de execução do projeto.

Exclusivamente no Fedora9 foi instalado o compilador Intel (versão gratuita),

para fins comparativos com o GCC e Gfortran. Os resultados foram favoráveis ao

primeiro compilador, porém com uma diferença muito pequena. Abaixo é exibido um

passo-a-passo resumido da instalação do compilador Intel na versão 11.069 para

plataforma 32 bits.

4.1.1. Compilador C++ Intel 11.069 (32 bits e 64 bits)

Instalação do Compilador C++ INTEL 11.069 no FEDORA 9 usando

plataforma Intel 32 bits:

1. Primeiramente é preciso instalar algumas bibliotecas requeridas pelo

compilador. Usando o FEDORA 9 com o GNOME a única biblioteca

necessária que não está instalada por default é “libstdc++.so.5”. Para

instalá-la execute a sequência de comandos:

yumlistavailable | greplibstdc

Será listado todos os pacotes disponíveis para o download. Anote o nome do

pacote mais atual.

yuminstall<nome do pacote que anotou>

2. Criar, caso não exista, os diretórios:1

mkdir /opt/intel/cc/11/069/ /opt/intel/licenses/

3. Colocar os arquivos de licenças dentro do diretório “/opt/intel/licenses/”

4. Extrair o conteúdo do arquivo “.tgz” com o compilador adquirido.

5. Entrar no diretório criado após a extração.

cd<diretório>

6. Executar o gerenciador de Instalação:

./install.sh

Page 57: Monografia Final Helder

45

7. Siga os passos do gerenciador.

8. Leia o passo .

4.1.2. Compilador Fortran 90 Intel 11.069 (32 bits e 64 bits)

Instalação do Compilador Fortran 90 INTEL 11.069 no FEDORA 9 usando

plataforma Intel 32 bits:

1. Primeiramente é preciso instalar algumas bibliotecas requeridas pelo

compilador. Usando o FEDORA 9 com o GNOME a única biblioteca

necessária que não está instalada por default é “libstdc++.so.5”. Para

instalá-la execute a sequência de comandos:

yumlistavailable | greplibstdc

Será listado todos os pacotes disponíveis para o download. Anote o nome do pacote

mais atual.

yuminstall<nome do pacote que anotou>

2. Criar, caso não exista, os diretórios:

mkdir /opt/intel/fc/11/069/ mkdir /opt/intel/licenses/

3. Colocar os arquivos de licenças dentro do diretório “/opt/intel/licenses/”

4. Extrair o conteúdo do arquivo “.tgz” com o compilador adquirido.

5. Entrar no diretório criado após a extração.

cd<diretório>

6. Executar o gerenciador de Instalação:

./install.sh

7. Siga os passos do gerenciador.

8. Leia o passo .

4.1.3. Configurando as Variáveis de Ambiente

Após instalar o compilador Intel seguindo os passos anteriores, é necessário

Page 58: Monografia Final Helder

46

configurar algumas variáveis para que o compilador funcione normalmente. Seguem

as etapas necessárias:

1. Edite o arquivo “/etc/profile”, acrescentando as seguintes linhas ao fim do

arquivo:

IA32ROOT=$IA32ROOT:/opt/intel/Compiler/11.0/069/ INTEL_FLEXLM_LICENSE=$INTEL_FLEXLM_LICENSE:/opt/intel/licenses LDPATH=$LDPATH:/opt/intel/Compiler/11.0/069/lib/ia32/ MANPATH=$MANPATH:/opt/intel/Compiler/11.0/069/man/ PATH=$PATH:/opt/intel/Compiler/11.0/069/bin/ia32 ROOTPATH=$ROOTPATH:/opt/intel/Compiler/11.0/069/bin/ia32 export IA32ROOT INTEL_FLEXLM_LICENSE LDPATH MANPATH PATH ROOTPATH

2. Reinicie o computador.

3. Para testar vá ao terminal e digite:

ifort –v icc –v

No bash, deverá retornar Version 11.0 para cada um dos comandos.

4.1.4. Instalando o MCNPX

Após a instalação bem sucedida dos compiladores os próximos passos

consistem em extrair, compilar e testar o MCNPX. A instalação no Fedora 9 se deu

exatamente como noGentoo, sendo que todas as complicações encontradas foram

referentes ao compilador não encontrar suas bibliotecas. Após definidas as Variáveis

de Ambiente citadas acima, toda a instalação ocorreu de maneira tranquila. Portanto

para consultar sobre a compilação do MCNPX os passos são os mesmos dos

indicados para o Gentoo (b. Instalação no Gentoo (serial e paralelo)).

4.2. Instalação no Gentoo (serial e paralelo)

Dentre as opções de distribuições Linux disponíveis no LCC na época da

execução do projeto (Fedora9 e Gentoo) , o Gentoo obteve o melhor desempenho.

Além disso, as instalações serial e paralela do MCNPX ocorreram sem surpresas. A

próxima parte do manual descreve o processo de compilação e instalação do

MCNPX utilizando os compiladores Intel (C++ e FORTRAN 90 sem utilizar a

Page 59: Monografia Final Helder

47

biblioteca do MPICH). Em seguida será demonstrado algo semelhante, com a

diferença dos compiladores usados serem o GNU GCC e o Gfortran, também sem

fazer uso das livrarias do MPICH. Por último é abordada a instalação do MCNPX

com MPICH, porém apenas utilizando os compiladores GNU.

É recomendado não fazer o processo de construção dos objetos e estruturas

da instalação em um diretório diferente do da instalação final. Para isso, crie um

diretório qualquer ex. “/tmp/mcnpx_install/” e execute os comandos de compilação

e instalação de dentro dele.

4.2.1. Compiladores Intel (C/C++ e Fortran 90) sem MPI

As versões testadas dos compiladores Intel foram 9.1.036 para o compilador

Fortran90 (ifort ou ifc) e 9.1.042 para o compilador C/C++ (icc).

1. Tenha certeza que o compilador está corretamente instalado e que as

variáveis abaixo foram definidas corretamente:

IA32ROOT=/opt/intel/compiler91 INTEL_FLEXLM_LICENSE=/opt/intel/compiler91/licenses LDPATH=/opt/intel/compiler91/lib MANPATH=/opt/intel/compiler91/man PATH=/opt/intel/compiler91/bin ROOTPATH=/opt/intel/compiler91/bin

As variáveis acima são necessárias para o compilador

2. Descompacte o arquivo “.tar” que contém os arquivos com o código fonte

do MCNPX e execute o script “configure” com as opções abaixo supondo

que você vá instalar o MCNPX em /usr/local/mcnpx e que os executáveis

dos compiladores tenham os nomes “ifort” e “icc” para as linguagens

Fortran e C/C++, respectivamente.)

$ ./configure --prefix=/usr/local/mcnpx --with-FC=ifort \ --with-CC=icc \ --host=i686-pc-linux \ --with-FFLAGS=-i8 \ --with-FFLAGS="-DUNIX=1 -DLINUX=1" \ --with-CFLAGS="-DUNIX=1 -DLINUX=1" \ --with-NOCHEAP

Entendendo o comando...

“--prefix=/usr/local/mcnpx” informa o local onde os executáveis serão

Page 60: Monografia Final Helder

48

compilados necessária a existência destes diretórios ; “--with-FC=ifort” informa o

nome do compilador Fortran; “--with-CC=icc” informa o nome do compilador C/C++;

“--host=i686-pc-linux” informa a plataforma do computador, somente pra informação

ao software; “--with-FFLAGS=-i8” e “--with-NOCHEAP” indicam ao compilador

Fortran a possibilidade de trabalhar com inteiro de 8 bytes; “--with-FFLAGS="-

DUNIX=1 -DLINUX=1"” e “--with-CFLAGS="-DUNIX=1 -DLINUX=1"” serve para que

o compilador interprete os códigos fontes com codificação específica para UNIX /

LINUX, previnindo possíveis erros lexos. Para mais opções consultar o manual de

instalação do MCNPX 2.6.

3. Após executar este script os objetos e os makefiles para a compilação já

estarão prontos, faltando apenas executar o comando “make”.

$ make

ATENÇÃO!

Antes de executar o comando “maketests” é necessário alterar um

arquivo “Makefile.h” para que os testes ocorram sem erros. Altere o arquivo

“/tmp/mcnpx_install/src/test/Makefile.h” nas linhas que contém as variáveis

“TARCH”, “TSYS”, “TFC” e “TCC” e as deixe assim:

TARCH = intel TSYS = linux TFC = ifc TCC = icc

Só então execute os commandos abaixo:

$ maketests $ makeinstall

Feito isto, o MCNPX já se encontra instalado. Mas para que seu

funcionamento ocorra sem problemas ainda é necessária a definição de algumas

variáveis de ambiente.

4. Antes de executar o MCNPX é necessário definir as variáveis de

ambiente “PATH” e “DATAPATH”. Isso pode ser feito editando o arquivo

“.bashrc” de cada usuário ou utilizando uma definição global, que pode

ser encontrada no “/etc/bash/bashrc” ou “/etc/bash.bashrc” dependendo

da distribuição do Linux.

Page 61: Monografia Final Helder

49

PATH=/usr/local/mcnpx/bin DATAPATH=/usr/local/mcnpx/DATA

Assumindo que o local de instalação tenha sido em “/usr/local/mcnpx/” os

valores acima devem estar inclusos no caminho das variáveis de ambiente.

5. Colocar as biblioteca utilizadas nos cálculos dentro da pasta “DATA”.

Verifique se o seu diretório “lib” contém as livrarias “phtlib”, “bertin” e

“barpol.dat”. Se não existirem estas livrarias então é necessário instalá-

las. Caso existam é necessário criar um link dessas livrarias dentro da

pasta “DATA”. Para isso basta seguir os passos:

$ cd /usr/local/mcnpx/DATA $ ln -s ../lib/phtlib . $ ln -s ../lib/bertin . $ ln -s ../lib/barpol.dat .

Verifique se existe o arquivo “mcnpx/DATA/xsdir”, caso não esteja presente copie o

arquivo xsdir1 para um outro chamado xsdir.

6. Se as variáveis de ambiente e as bibliotecas foram configuradas e

instaladas corretamente o sistema deverá responder corretamente à

chamada do programa MCNPX.

4.2.2. Compiladores GNU (C/C++ e Fortran 90) sem MPI

A versão testada dos compiladores foi a 4.2.

1. Durante o processo de compilação do MCNPX o compilador de Fortran 90

deve ser chamado de “f90”, então é necessário criar um link simbólico

entre o “gfortran” e “f90”.

$ cd /usr/i686-pc-linux-gnu/gcc-bin/4.1.1 $ ln -s gfortran f90

2. Decompacte o arquivo “.tar” que contenha os arquivos do código fonte do

MCNPX. Para que o compilador GNU funcione corretamente no próximo

passo é necessário modificar algumas partes do código de cinco arquivos

escritos em Fortran. São eles:

src/bertin/getexm.F src/htape3x/getexm.F

Page 62: Monografia Final Helder

50

src/mcnpx/mcnpf/getexm.F src/phtlib/mcnpf/getexm.F src/xsex3/getexm.F

Em cada um destes modifique a seguinte linha:

integer(ki4), external :: iargc !/*ge5f 8*/

Transformando-a em:

integer(ki4) :: iargc !/*ge5f 8*/

3. Execute o script “configure” com as opções abaixo (supondo que queira

instalar o MCNPX em “/usr/local/mcnpx/” :

$ ./configure --prefix=/usr/local/mcnpx \ --with-FC=f90 \ --with-CC=gcc \ --host=i686-pc-linux \ --with-FFLAGS=-i8 \ --with-FFLAGS="-DUNIX=1 -DLINUX=1 -DG95=1" \ --with-CFLAGS="-DUNIX=1 -DLINUX=1" \ --with-NOCHEAP

Entendendo o comando:

“--prefix=/usr/local/mcnpx” informa o local onde os executáveis serão

compilados (necessária a existência destes diretórios ; “--with-FC=f90” informa o

nome do compilador Fortran; “--with-CC=gcc” informa o nome do compilador C/C++;

“--host=i686-pc-linux” informa a plataforma do computador, somente pra informação

ao software; “--with-FFLAGS=-i8” e “--with-NOCHEAP” indicam ao compilador

Fortran a possibilidade de trabalhar com inteiro de 8 bytes; “--with-FFLAGS="-

DUNIX=1 -DLINUX=1 –DG95=1"” e “--with-CFLAGS="-DUNIX=1 -DLINUX=1"” serve

para que o compilador interprete os códigos fontes com codificação específica para

UNIX / LINUX, previnindo possíveis erros lexos. Para mais opções consultar o

manual de instalação do MCNPX 2.6.

4. Após executar este script os objetos e os makefiles para a compilação já

estarão prontos, faltando apenas executar o comando “make”.

$ make

Page 63: Monografia Final Helder

51

ATENÇÃO!

Antes de executar o comando “maketests” é necessário alterar um

arquivo “Makefile.h” para que os testes ocorram sem erros. Altere o arquivo

“/tmp/mcnpx_install/src/test/Makefile.h” nas linhas que contém as variáveis

“TARCH”, “TSYS”, “TFC” e “TCC” e as deixe assim:

TARCH = intel TSYS = linux TFC = ifc TCC = icc

Só então execute os commandos abaixo:

$ maketests $ makeinstall

Feito isto, o MCNPX já se encontra instalado. Mas para que seu

funcionamento ocorra sem problemas ainda é necessária a definição de algumas

variáveis de ambiente.

5. Antes de executar o MCNPX é necessário definir as variáveis de

ambiente “PATH” e “DATAPATH”. Isso pode ser feito editando o arquivo

“.bashrc” de cada usuário ou utilizando uma definição global, que pode

ser encontrada no “/etc/bash/bashrc” ou “/etc/bash.bashrc” dependendo

da distribuição do Linux.

PATH=/usr/local/mcnpx/bin DATAPATH=/usr/local/mcnpx/DATA

Assumindo que o local de instalação tenha sido em “/usr/local/mcnpx/” os

valores acima devem estar inclusos no caminho das variáveis de ambiente.

6. Colocar as biblioteca utilizadas nos cálculos dentro da pasta “DATA”.

Verifique se o seu diretório “lib” contém as livrarias “phtlib”, “bertin” e

“barpol.dat”. Se não existirem estas livrarias então é necessário instalá-

las. Caso existam é necessário criar um link dessas livrarias dentro da

pasta “DATA”. Para isso basta seguir os passos:

$ cd /usr/local/mcnpx/DATA $ ln -s ../lib/phtlib . $ ln -s ../lib/bertin . $ ln -s ../lib/barpol.dat .

Page 64: Monografia Final Helder

52

Verifique se existe o arquivo “mcnpx/DATA/xsdir”, caso não esteja presente

copie o arquivo xsdir1 para um outro chamado xsdir.

Se as variáveis de ambiente e as bibliotecas foram configuradas e instaladas

corretamente o sistema deverá responder corretamente à chamada do programa

MCNPX.

4.2.3. Compiladores GNU (C/C++ e Fortran 90) com MPI

Pequenas modificações nas configurações acima (para a instalação com o

Compilador GNU (C/C++ e Fortran 90) sem MPI) permitem habilitar a habilidade de

executar o MCNPX de forma paralela, utilizando MPI (Message-Passing Interface). A

instalação a seguir foi feita com a biblioteca do MPICH2 versão 1.03. Estas

bibliotecas podem ser encontradas neste endereço

http://www.mcs.anl.gov/research/projects/mpich2/.

1. Instalar o MPICH2. No site do projeto encontra-se uma grande quantidade

de material com conteúdo para diversas distribuições, incluído o Gentoo.

Além disso, nos repositórios do Gentoo é possível encontrar pacotes já

prontos para instalação de maneira ainda mais fácil, destas bibliotecas.

Após a instalação será possível encontrar dois executáveis na pasta

“/usr/bin/”:

“/usr/bin/mpif90” - compila e liga programas em MPI escritos em Fortran 90.

“/usr/bin/mpif90”- compila e liga programas em MPI escritos em C.

Além destes executáveis é importante saber a localização da instalação de

algumas bibliotecas do MPICH, pois esta informação será necessária na execução

do script “configure”. Exemplos das bibliotecas MPICH que devem ser localizadas:

/usr/lib64/libmpich.a /usr/lib64/libmpich.so /usr/lib64/libmpichcxx.a /usr/lib64/libmpich.so.0.0 /usr/lib64/libmpichf90.a /usr/lib64/libmpich.so.0

2. Durante o processo de compilação do MCNPX o compilador de Fortran 90

deve ser chamado de “f90”, então é necessário criar um link simbólico

entre o “gfortran” e “f90”.

Page 65: Monografia Final Helder

53

$ cd /usr/i686-pc-linux-gnu/gcc-bin/4.1.1 $ ln -s gfortran f90

3. Decompacte o arquivo “.tar” que contenha os arquivos do código fonte do

MCNPX. Para que o compilador GNU funcione corretamente no próximo

passo é necessário modificar algumas partes do código de cinco arquivos

escritos em Fortran. São eles:

src/bertin/getexm.F src/htape3x/getexm.F src/mcnpx/mcnpf/getexm.F src/phtlib/mcnpf/getexm.F src/xsex3/getexm.F

Em cada um destes modifique a seguinte linha:

integer(ki4), external :: iargc !/*ge5f 8*/

Transformando-a em:

integer(ki4) :: iargc !/*ge5f 8*/

4. Execute o script “configure” com as opções abaixo supondo que queira

instalar o MCNPX em “/usr/local/mcnpx/” :

$ ./configure --prefix=/usr/local/mcnpx \ --with-FC=mpif90 \ --with-CC=mpicc \ --host=i686-pc-linux \ --with-FFLAGS=-i8 \ --with-FFLAGS="-DUNIX=1 -DLINUX=1 -DG95=1" \ --with-CFLAGS="-DUNIX=1 -DLINUX=1" \ --with-MPILIB="-L/usr/lib64 -lmpich" \ --with-NOCHEAP

Entendendo o commando:

“--prefix=/usr/local/mcnpx” informa o local onde os executáveis serão

compilados necessária a existência destes diretórios ; “--with-FC=mpif90” informa o

nome do compilador Fortran; “--with-CC=mpicc” informa o nome do compilador

C/C++; “--host=i686-pc-linux” informa a plataforma do computador, somente pra

informação ao software; “--with-FFLAGS=-i8” e “--with-NOCHEAP” indicam ao

compilador Fortran a possibilidade de trabalhar com inteiro de 8 bytes; “--with-

FFLAGS="-DUNIX=1 -DLINUX=1 –DG95=1"” e “--with-CFLAGS="-DUNIX=1 -

Page 66: Monografia Final Helder

54

DLINUX=1"” serve para que o compilador interprete os códigos fontes com

codificação específica para UNIX / LINUX, previnindo possíveis erros lexos; “--with-

MPILIB="-L/usr/lib64 -lmpich"” indica o endereço das bibliotecas do MPICH

necessárias para a compilação . Para mais opções consultar o manual de instalação

do MCNPX 2.6.

5. Após executar este script os objetos e os makefiles para a compilação já

estarão prontos, faltando apenas executar o comando “make”.

$ make

ATENÇÃO!

Antes de executar o comando “maketests” é necessário alterar um

arquivo “Makefile.h” para que os testes ocorram sem erros. Altere o arquivo

“/tmp/mcnpx_install/src/test/Makefile.h” nas linhas que contém as variáveis

“TARCH”, “TSYS”, “TFC” e “TCC” e as deixe assim:

TARCH = intel TSYS = linux TFC = ifc TCC = icc

Só então execute os commandos abaixo:

$ maketests $ makeinstall

Feito isto, o MCNPX já se encontra instalado. Mas para que seu

funcionamento ocorra sem problemas ainda é necessária a definição de algumas

variáveis de ambiente.

6. Antes de executar o MCNPX é necessário definir as variáveis de

ambiente “PATH” e “DATAPATH”. Isso pode ser feito editando o arquivo

“.bashrc” de cada usuário ou utilizando uma definição global, que pode

ser encontrada no “/etc/bash/bashrc” ou “/etc/bash.bashrc” dependendo

da distribuição do Linux.

PATH=/usr/local/mcnpx/bin DATAPATH=/usr/local/mcnpx/DATA

Assumindo que o local de instalação tenha sido em “/usr/local/mcnpx/” os

Page 67: Monografia Final Helder

55

valores acima devem estar inclusos no caminho das variáveis de ambiente.

7. Colocar as biblioteca utilizadas nos cálculos dentro da pasta “DATA”.

Verifique se o seu diretório “lib” contém as livrarias “phtlib”, “bertin” e

“barpol.dat”. Se não existirem estas livrarias então é necessário instalá-

las. Caso existam é necessário criar um link dessas livrarias dentro da

pasta “DATA”. Para isso basta seguir os passos:

$ cd /usr/local/mcnpx/DATA $ ln -s ../lib/phtlib . $ ln -s ../lib/bertin . $ ln -s ../lib/barpol.dat .

Verifique se existe o arquivo “mcnpx/DATA/xsdir”, caso não esteja presente

copie o arquivo xsdir1 para um outro chamado xsdir.

Se as variáveis de ambiente e as bibliotecas foram configuradas e instaladas

corretamente o sistema deverá responder corretamente à chamada do programa

MCNPX.