sábado, 30 de setembro de 2017

XIV Pylestras: um breve comentário e algumas fotos

Roteiro do Pylestra

Últimos ajustes antes das pylestras e primeira Pylestra da Ryllari.

Durante as primeiras pylestras, auditório cheio.

Final do Pylestras, pena que eu não pude ficar até o final.


Fora este aqui que vos escreve, todos os apresentadores conseguiram transmitir suas pylestras em alto e bom som. Minha voz não estava nos melhores dias, mas consegui cumprir o meu tempo (30 minutos). As pylestras foram bem interessantes e vários participantes mostraram que gostaram (inclusive do "coffe-break" mais que generoso) e pensam em ir nas próximas edições. Esta foi a XIV edição.

Para quem participou do evento: formulário para dar um feedback:
O que você achou do Pylestras?

sábado, 23 de setembro de 2017

Incluindo um índice remissivo - LaTeX


Alguns textos longos, como teses ou livros, podem incluir um índice de palavras importantes no final do documento para facilitar a consulta por parte do leitor. Para fazer essa tarefa no LaTeX precisamos incluir o pacote makeidx e chamá-lo no preâmbulo do documento (antes do \begin{document}):

\usepackage{makeidx}
\makeindex

As palavras que devem ser destacadas e incluídas no índice remissivo devem, ao longo do texto do documento serem destacadas com o comando "\index{palavra}". Por exemplo:
Do ponto de vista do software, o Scilab \index{Scilab} é uma linguagem interpretada. Isso geralmente permite obter processos de desenvolvimento mais rápidos, pois o usuário acessa linguagem de alto nível, com um rico conjunto de recursos fornecidos pela biblioteca. Os usuários do Scilab podem desenvolver seus próprios módulos para que eles possam resolver seus problemas particulares. 
Para o que o índice remissivo apareça no final do seu documento, é necessário usar o comando "\printindex". Normalmente, esse comando não irá gerar uma nova entrada no sumário do documento, então, se você desejar que o índice remissivo faça parte do sumário deve ser incluído o comando "\addcontentsline{toc}{chapter}{Índice Remissivo}":

\addcontentsline{toc}{chapter}{Índice Remissivo}
\printindex

Podemos também incluir uma subcategoria no índice usando "\index{palavra!item}", por exemplo: "\index{Scilab!rand}" - nesse caso, será criada uma entrada "rand" dentro do tópico especial "Scilab". Vejamos um exemplo mais completo:


Resulta em:

segunda-feira, 18 de setembro de 2017

Mais xadrez: Zonal Cearense 2017


Zonal Cearense 2017
12-15 Out
Ideal Clube,Fortaleza-CE
Av. Monsenhor Tabosa, 1381 - Meireles

VALENDO VAGA PARA A FINAL DO CEARENSE ABSOLUTO e
DUAS vagas para a semifinal do Brasileiro Absoluto
REGULAMENTO da Etapa: http://bit.ly/2hc4kuG

*** Todos os jogadores deverão estar cadastrados na CBX e em dia com a anuidade CBX 2017

quinta-feira, 14 de setembro de 2017

Calculando o volume numericamente: computação científica com Python

Exemplo de uma figura 3D.
Uma tarefa importante é o cálculo de volumes de figuras definidas por alguma função $z = f(x,y)$. Para alguns casos, é possível calcularmos analiticamente o volume desejado, mas em vários outros esse cálculo analítico não é possível. Nesses casos, podemos tentar fazer uma estimativa numérica do problema. Podemos "fatiar" esse volume em pequenos prismas de base retangulares e altura dada pelo valor da função $f(x,y)$ na posição $(x_n,y_m)$ selecionada. Então, teremos vários prismas com volume $dV_{nm} = f(x_n,y_m) dx dy$ e volume pode ser estimado pela soma ponderada do volume desses prismas: $$V_{estimado} \cong h_x h_y \sum_{n}\sum_{m} p(n,m)f(x_n,y_m) $$ onde $p(n,m)$ é peso na posição $(x_n,y_m)$. Esses pesos podem ser obtidos, por exemplo, pela aplicação da primeira ou segunda regra de Simpson repetida. Por exemplo, para uma integral na área de $X$ de 0 a 1 e $Y$ também de 0 a 1, se o eixo $X$ for dividido em 5 pontos (0, 1/4, 2/4, 3/4, 1) e o eixo $Y$ em 4 pontos (0, 1/3, 2/3, 1), podemos usar os pesos mostrados na tabela abaixo:

Pesos para o cálculo de $dV$:
x/y| 0 & 1/4 & 2/4 & 3/4 & 1
------------------------------------------
0  | 1 & 4 &   2 &   4 &   1
1/3| 3 & 12 &  6 &   12 &  3
2/3| 3 & 12 &  6 &   12 &  3
1  | 1 & 4 &   2 &   4 &   1 

O código abaixo é um exemplo de programa Python que calcula o volume da função $f(x,y) = \sin(3e^{(x^2 + y^2)/4})$ (ver figura inicial desta postagem).

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import numpy as np

dx = 0.25 
dy = 0.25
X = np.arange(-5, 5+dx, dx)
Y = np.arange(-5, 5+dy, dy)
X, Y = np.meshgrid(X, Y)
R = np.exp((-X**2 - Y**2)/4.0)
Z = np.sin(3*R);
Zp = Z;


fig = plt.figure()
ax = fig.gca(projection='3d')

# Plotando a surperfície.

surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm,linewidth=0, antialiased=False)
plt.title('Função: $\sin(3e^{(x² + y²)/4})$');


# Adicionando cores e uma barra de cores

fig.colorbar(surf, shrink=0.5, aspect=5)

plt.show()

P = np.arange(-5, 5+dx, dx)
fim=len(P)-1print('tam = ',fim)
P[0] = 1;
n=1;
m = 0;

while fim>n:
    P[n] = 4;
    P[n+1]=2;
    n=n+2;

P[fim] = 1;
print(P)
n=0; m = 0; kk=1;
fim=fim+1
while fim>n:
    n=n+1;
    m=1;
    while fim>m:
        kk = P[n]*P[m]
        Zp[n,m] = Z[n,m]*kk
        m=m+1 
Zpsum = dx*dy*np.sum(np.sum(Zp))/9;
print('Volume = ',Zpsum)

terça-feira, 12 de setembro de 2017

Divulgando: CCXR - Xadrez Clube 2017 - 4 etapa



CCXR - Xadrez Clube 2017 - 4 etapa
17 Set,14:00h - 18:30h
Shopping Benfica,Fortaleza-CE
Av. Carapinima, 2200 - Benfica, Fortaleza - CE, 60015-290

**** Click aqui para fazer sua inscrição agora!


Válido pelo Circuito Cearense de Xadrez Rápido 2017

Organização/ArbitragemRoberto Santiago

Finalidade
-Indicar pelo menos dois finalistas para a Super Final do Campeonato Cearense de Xadrez Rápido
-Incentivar a prática do xadrez pelo Ceará e a confraternização enxadrística.

Forma de disputa
- Sistema Suíço em 5 rodadas pelo programa Swiss Perfect 98
- Cadência 1: Relógios digitais -> 15 minutos + 5 segundos de incremento
- Cadência 2: Relógios analógicos -> 20 minutos
- Desempate : 1.Buchholz 2.Progressivo 3.Median-Buchholz 4.Berger

Inscrições
- LOTAÇÃO  : 45 participantes
- Valor : R$ 20,00
- 50% de desconto para público feminino, titulados (CM,MN,MF), menores de 18 anos e maiores de 60 anos.
- ÚNICAMENTE PELO SITE www.chess-ratings.com
A organização do evento se reserva ao direito de não receber inscrições no dia do evento, conforme condições de espaço físico.

Programação
-14:00 - Confirmação das pré-inscrições e inscrições gratuitas
- Abertura e Congresso Técnico
- 1ª, 2ª, 3ª, 4ª e 5ª Rodadas
- Premiação e Encerramento

Premiação
- Campeão : R$ 60,00 + Medalha
- Vice    : R$ 40,00 + Medalha
- 3º Lugar: Medalha
-Melhor sub18 : Medalha
-Melhor veterano : Medalha
-Melhor feminino : Medalha


quinta-feira, 7 de setembro de 2017

Uma amostra do aquecimento global: três furações em uma mesma imagem


O aquecimento global é um fato, não tem como contestar. Estamos no início de um intenso período de aquecimento. Em grande medida, esse aquecimento é causado pelas atividades humanas. Uma das consequências é o surgimento de tempestades mais fortes e com maior frequência. Outros fenômenos podem ocorrer (chuvas mais intensas, secas mais prolongadas, etc.). Ontem, por exemplo, choveu em aqui em Fortaleza, um fato raro para essa época do ano.

No momento existem três furacões no Atlântico (Katia, Irma e José) que já causaram mortes e muita destruição. Eu não me lembro de um fato assim. O Caribe, México e parte dos EUA irão sofrer as consequências desses furações. Quando vamos começar a pensar seriamente em nossa casa, o pequeno Planeta Terra? Não temos um "planeta B" para nos mudarmos. A nossa melhor alternativa é respeitar os limites da Natureza e aprendermos a viver de forma mais harmônica com o mundo.