ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
Slides tdc 2010
1. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Python: Uma ferramenta de computacao cient´fica
ı
para estudos Astrof´sicos
ı
Eduardo S. Pereira
22/agosto/2010
2. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
1 ¸˜
Introducao
2 ¸˜
Computacao cient´fica
ı
3 Desvendando o Universo com Python
3. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
4. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
5. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
6. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
7. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
8. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
9. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜
Introducao
Por que Python?
Portabilidade;
Sintaxe clara;
Orientada a objetos;
Interface flex´vel com linguagens compiladas como C e
ı
FORTRAN;
Open Source;
Vasta biblioteca cient´fica (e de uso geral) : scipy, numpy,
ı
scientific python, matplotlib...
´ ´
Facilidade em paralelizar codigos seja em rede ou em maquinas
com multiprocessadores.
10. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜ ¸˜
Programacao orientada a objetos e paralelizacao
POO
´ ´
Escrever codigos realmente reutilizaveis;
˜
Facilidade na extensao de projetos usando heranca;
¸
¸˜
Paralelizacao BSP - Bulk Synchronous Parallel model
¸˜
Simples e conveniente modelo de paralelizacao de programas;
¸˜ ¸˜
Passos de comunicacao e computacao se alternam e cada
passo envolve um sincronizacao
¸ ˜ de todos os processos, fazendo
imposs´veis o surgimento de deadlocks.
ı
Pacotes importantes
Pacotes fundamentais - scipy, numpy, scientific python, matplotlib
11. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜ ¸˜
Programacao orientada a objetos e paralelizacao
POO
´ ´
Escrever codigos realmente reutilizaveis;
˜
Facilidade na extensao de projetos usando heranca;
¸
¸˜
Paralelizacao BSP - Bulk Synchronous Parallel model
¸˜
Simples e conveniente modelo de paralelizacao de programas;
¸˜ ¸˜
Passos de comunicacao e computacao se alternam e cada
passo envolve um sincronizacao
¸ ˜ de todos os processos, fazendo
imposs´veis o surgimento de deadlocks.
ı
Pacotes importantes
Pacotes fundamentais - scipy, numpy, scientific python, matplotlib
12. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜ ¸˜
Programacao orientada a objetos e paralelizacao
POO
´ ´
Escrever codigos realmente reutilizaveis;
˜
Facilidade na extensao de projetos usando heranca;
¸
¸˜
Paralelizacao BSP - Bulk Synchronous Parallel model
¸˜
Simples e conveniente modelo de paralelizacao de programas;
¸˜ ¸˜
Passos de comunicacao e computacao se alternam e cada
passo envolve um sincronizacao
¸ ˜ de todos os processos, fazendo
imposs´veis o surgimento de deadlocks.
ı
Pacotes importantes
Pacotes fundamentais - scipy, numpy, scientific python, matplotlib
13. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜ ¸˜
Programacao orientada a objetos e paralelizacao
POO
´ ´
Escrever codigos realmente reutilizaveis;
˜
Facilidade na extensao de projetos usando heranca;
¸
¸˜
Paralelizacao BSP - Bulk Synchronous Parallel model
¸˜
Simples e conveniente modelo de paralelizacao de programas;
¸˜ ¸˜
Passos de comunicacao e computacao se alternam e cada
passo envolve um sincronizacao
¸ ˜ de todos os processos, fazendo
imposs´veis o surgimento de deadlocks.
ı
Pacotes importantes
Pacotes fundamentais - scipy, numpy, scientific python, matplotlib
14. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
¸˜ ¸˜
Programacao orientada a objetos e paralelizacao
POO
´ ´
Escrever codigos realmente reutilizaveis;
˜
Facilidade na extensao de projetos usando heranca;
¸
¸˜
Paralelizacao BSP - Bulk Synchronous Parallel model
¸˜
Simples e conveniente modelo de paralelizacao de programas;
¸˜ ¸˜
Passos de comunicacao e computacao se alternam e cada
passo envolve um sincronizacao
¸ ˜ de todos os processos, fazendo
imposs´veis o surgimento de deadlocks.
ı
Pacotes importantes
Pacotes fundamentais - scipy, numpy, scientific python, matplotlib
15. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
O FORTRAN - FORmula TRANslator- ainda vive.
´
Trabalhos mostram que um codigo em Python tem um tempo de
¸˜
execucao maior que em linguagens compiladas;
Para solucionar esse problema, usa-se uma linguagem
compilada somente na parte critica;
¸˜
Faz-se uma funcao ou subrotina em Fortran;
Compilar e encapsular usando f2py - Integrada com numpy;
O import ocorre normalmente;
16. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
O FORTRAN - FORmula TRANslator- ainda vive.
´
Trabalhos mostram que um codigo em Python tem um tempo de
¸˜
execucao maior que em linguagens compiladas;
Para solucionar esse problema, usa-se uma linguagem
compilada somente na parte critica;
¸˜
Faz-se uma funcao ou subrotina em Fortran;
Compilar e encapsular usando f2py - Integrada com numpy;
O import ocorre normalmente;
17. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
O FORTRAN - FORmula TRANslator- ainda vive.
´
Trabalhos mostram que um codigo em Python tem um tempo de
¸˜
execucao maior que em linguagens compiladas;
Para solucionar esse problema, usa-se uma linguagem
compilada somente na parte critica;
¸˜
Faz-se uma funcao ou subrotina em Fortran;
Compilar e encapsular usando f2py - Integrada com numpy;
O import ocorre normalmente;
18. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
O FORTRAN - FORmula TRANslator- ainda vive.
´
Trabalhos mostram que um codigo em Python tem um tempo de
¸˜
execucao maior que em linguagens compiladas;
Para solucionar esse problema, usa-se uma linguagem
compilada somente na parte critica;
¸˜
Faz-se uma funcao ou subrotina em Fortran;
Compilar e encapsular usando f2py - Integrada com numpy;
O import ocorre normalmente;
19. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
O FORTRAN - FORmula TRANslator- ainda vive.
´
Trabalhos mostram que um codigo em Python tem um tempo de
¸˜
execucao maior que em linguagens compiladas;
Para solucionar esse problema, usa-se uma linguagem
compilada somente na parte critica;
¸˜
Faz-se uma funcao ou subrotina em Fortran;
Compilar e encapsular usando f2py - Integrada com numpy;
O import ocorre normalmente;
20. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
C FILE oimundo.f
subroutine oi(a,b)
real*8 a,b
cf2py intent(in) a
cf2py intent(out) b
b = a*a
write(6,*) ’Oi mundo, b = ’,b,’, a = ’,a
return
end
21. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
ˆ
Linguagem dinamica e compilada - Melhor de dois mundos
f2py -c -m oimundo oimundo.f
> import oimundo
> oimundo.oi(5)
> ’Oi mundo, b = 25.0, a = 5.0
22. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
23. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
˜
Ondas Gravitacionais (OG), na teoria da relatividade geral, sao
¸˜
perturbacoes do espaco tempo que se propagam a velocidade
¸
da luz;
Desenvolvimento de um programa em Python para estudo de
¸˜ ´ ¸˜
formacao de galaxias e estrelas, evolucao de buracos negros.
A partir disso avaliar qual seria o sinal produzido, em OG, por
˜
estrelas que dao origem a buracos negros e por processo de
˜
crescimento e fusao de buracos negros.
24. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
˜
Ondas Gravitacionais (OG), na teoria da relatividade geral, sao
¸˜
perturbacoes do espaco tempo que se propagam a velocidade
¸
da luz;
Desenvolvimento de um programa em Python para estudo de
¸˜ ´ ¸˜
formacao de galaxias e estrelas, evolucao de buracos negros.
A partir disso avaliar qual seria o sinal produzido, em OG, por
˜
estrelas que dao origem a buracos negros e por processo de
˜
crescimento e fusao de buracos negros.
25. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
˜
Ondas Gravitacionais (OG), na teoria da relatividade geral, sao
¸˜
perturbacoes do espaco tempo que se propagam a velocidade
¸
da luz;
Desenvolvimento de um programa em Python para estudo de
¸˜ ´ ¸˜
formacao de galaxias e estrelas, evolucao de buracos negros.
A partir disso avaliar qual seria o sinal produzido, em OG, por
˜
estrelas que dao origem a buracos negros e por processo de
˜
crescimento e fusao de buracos negros.
26. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
27. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
28. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
OGCOSMO: uma ferramenta para estudo de ondas
´
gravitacionais cosmologicas
29. ´
Sumario
¸˜
Introducao
¸˜
Computacao cient´fica
ı
Desvendando o Universo com Python
FIM
Grato
MUITO OBRIGADO.