A inércia de Sierpiński

Problemas de difícil resolução por métodos convencionais, mas que admitem uma solução simples e elegante.

A inércia de Sierpiński

Mensagempor hexphreak em Terça Jan 13, 2009 10:42 pm

[Este problema é dedicado aos délficos (e quarkianos, claro) que irão amanhã participar na segunda fase das XXVII OPM :) ]

Para quem não sabe, Wacław Sierpiński foi um prolífico matemático polaco do séc. XX, com muitas contribuições reconhecidas em várias áreas da Matemática, entre as quais teoria de conjuntos e topologia. No mundo da matemática recreativa, talvez seja mais conhecido por um dos mais famosos fractais, que leva o seu nome: o triângulo de Sierpinski.

O vosso (primeiro!) desafio é determinarem o momento de inércia deste triângulo em torno do eixo que lhe é perpendicular e passa pelo seu centro, assumindo para tal que tem lado l e massa m :wink:


P.S.: Dado o seu volume de publicações, o título deste problema será talvez um pouco injusto para o Sr. Sierpiński :P
Avatar do utilizador
hexphreak
top-Quark!
top-Quark!
 
Mensagens: 1959
Registado: Segunda Nov 05, 2007 8:52 pm
Localização: Maia/Porto

Re: A inércia de Sierpiński

Mensagempor jap em Terça Jan 13, 2009 10:44 pm

E um prémio (a sério) para quem aqui apresentar o primeiro programa em Python que desenhe esse triângulo! :wink:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6801
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Re: A inércia de Sierpiński

Mensagempor Ivo_Timóteo em Terça Jan 13, 2009 11:26 pm

O output tem de ser mesmo na forma de uma imagem? (incluo-me no concurso? :D)
Avatar do utilizador
Ivo_Timóteo
charm-Quark!
charm-Quark!
 
Mensagens: 579
Registado: Quarta Nov 15, 2006 7:25 pm
Localização: V. N. Gaia

Re: A inércia de Sierpiński

Mensagempor jap em Terça Jan 13, 2009 11:48 pm

Ivo_Timóteo Escreveu:O output tem de ser mesmo na forma de uma imagem? (incluo-me no concurso? :D)


Bem, diria que sim... :roll:

Claro que podes fazer parte do concurso e habilitares-te a ganhar...um magnífico CD de Jazz! :lol:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6801
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Re: A inércia de Sierpiński

Mensagempor Ivo_Timóteo em Quarta Jan 14, 2009 12:20 am

Bem, para não estar a aprender algo de novo... Usei o vpython :)

Código: Seleccionar Todos
from visual import *

scene.center=(5,4.33,0)
scene.range=(8,8,0)

pontos = [[(0.,0.), (10.,0.), (5., 5.*sqrt(3)), (0.,0.)]]

def med(p1, p2):
    x = 0
    y = 0
    if p1[0]<p2[0]:
        x=p1[0]+(p2[0]-p1[0])/2.0
    else:
        x=p2[0]+(p1[0]-p2[0])/2.0
    if p1[1]<p2[1]:
        y=p1[1]+(p2[1]-p1[1])/2.0
    else:
        y=p2[1]+(p1[1]-p2[1])/2.0
    return (x, y)


def process(t):
    t1 = [t[0], med(t[0],t[1]), med(t[0], t[2]), t[0]]
    t2 = [med(t[0],t[1]), t[1], med(t[1], t[2]), med(t[0], t[1])]
    t3 = [med(t[0],t[2]), med(t[2],t[1]), t[2], med(t[0],t[2])]
    return [t1, t2, t3]


def build():
    global pontos
    aux = []
    for i in range(0, len(pontos)):
        aux += process(pontos[i])
    pontos = aux
   

def sierpinski(n):
    global pontos
    for i in range(0, n):
        for j in range(0, len(pontos)):
            curve(pos=pontos[j])
        build()

sierpinski(10)


com 10 iterações já dá para obter um triângulo engraçado :)

-> lado direito do rato para mover
-> botão esquerdo e direito ao mesmo tempo (ou botão central) para fazer zoom
Avatar do utilizador
Ivo_Timóteo
charm-Quark!
charm-Quark!
 
Mensagens: 579
Registado: Quarta Nov 15, 2006 7:25 pm
Localização: V. N. Gaia

Re: A inércia de Sierpiński

Mensagempor jap em Quarta Jan 14, 2009 12:49 am

Ena, que rápido! :hands: Parece que o prémio já tem dono! :lol:

Vou testar. :wink:

E eu que pensava que com o teu treino de Scheme ia sair um algoritmo recursivo! :lol:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6801
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Re: A inércia de Sierpiński

Mensagempor Ivo_Timóteo em Quarta Jan 14, 2009 12:58 am

Passagem a 3D :)

Código: Seleccionar Todos
from visual import *

scene.center=(5,4.33,0)
scene.range=(20,20,20)

pontos = [[(0.,0.,0.), (10.,0.,0.), (5., 8.66, 0.), (0.,0.,0.), (5.0, 2.89, 8.165), (5., 8.66, 0.), (10.,0.,0.), (5.0, 2.89, 8.165)]]

def med(p1, p2):
    x = 0
    y = 0
    z = 0
    if p1[0]<p2[0]:
        x=p1[0]+(p2[0]-p1[0])/2.0
    else:
        x=p2[0]+(p1[0]-p2[0])/2.0
    if p1[1]<p2[1]:
        y=p1[1]+(p2[1]-p1[1])/2.0
    else:
        y=p2[1]+(p1[1]-p2[1])/2.0
    if p1[2]<p2[2]:
        z=p1[2]+(p2[2]-p1[2])/2.0
    else:
        z=p2[2]+(p1[2]-p2[2])/2.0
    return (x, y, z)


def process(t):
    t1 = [t[0], med(t[0],t[1]), med(t[0], t[2]), t[0], med(t[0], t[4]), med(t[0], t[2]), med(t[0], t[1]), med(t[0], t[4])]
    t2 = [med(t[0],t[1]), t[1], med(t[1], t[2]), med(t[0],t[1]), med(t[1], t[4]), med(t[1], t[2]), t[1], med(t[1], t[4])]
    t3 = [med(t[0],t[2]), med(t[1], t[2]), t[2], med(t[0],t[2]), med(t[2], t[4]), t[2], med(t[1], t[2]), med(t[2], t[4])]
    t4 = [med(t[0],t[4]), med(t[1],t[4]), med(t[2], t[4]), med(t[0],t[4]), t[4], med(t[2], t[4]), med(t[1], t[4]), t[4]]
    return [t1, t2, t3, t4]


def build():
    global pontos
    aux = []
    for i in range(0, len(pontos)):
        aux += process(pontos[i])
    pontos = aux
   

def sierpinski(n):
    global pontos
    for i in range(0, n):
        for j in range(0, len(pontos)):
            curve(pos=pontos[j])
        build()


sierpinski(5)



Mais uma vez podem brincar :)
Desta vez aconselho ainda mais :P

-> botão do lado direito do rato para mover a câmara
-> botão esquerdo e direito ao mesmo tempo (ou botão central) para fazer zoom
Avatar do utilizador
Ivo_Timóteo
charm-Quark!
charm-Quark!
 
Mensagens: 579
Registado: Quarta Nov 15, 2006 7:25 pm
Localização: V. N. Gaia

Re: A inércia de Sierpiński

Mensagempor Ivo_Timóteo em Quarta Jan 14, 2009 10:39 pm

Para quem não dá jeito correr o programa...

Com 10 iterações:

Imagem


E uma imagem mais "artística" da pirâmide com 8 iterações:

Aqui
Avatar do utilizador
Ivo_Timóteo
charm-Quark!
charm-Quark!
 
Mensagens: 579
Registado: Quarta Nov 15, 2006 7:25 pm
Localização: V. N. Gaia

Re: A inércia de Sierpiński

Mensagempor jap em Quarta Jan 14, 2009 10:58 pm

Beautiful! :hands:
José António Paixão
Departamento de Física da FCTUC
Avatar do utilizador
jap
Site Admin
Site Admin
 
Mensagens: 6801
Registado: Quinta Nov 09, 2006 9:34 pm
Localização: Univ. de Coimbra

Re: A inércia de Sierpiński

Mensagempor JoãoAbílio em Quarta Jan 14, 2009 11:45 pm

Merveilleuse!!!
"Não se pode ensinar alguma coisa a alguém, pode-se apenas auxiliar a descobrir por si mesmo." - Galileu Galilei
Avatar do utilizador
JoãoAbílio
down-Quark!
down-Quark!
 
Mensagens: 125
Registado: Terça Ago 12, 2008 10:58 pm
Localização: Oliv. do Hospital/ Coimbra

Re: A inércia de Sierpiński

Mensagempor RicardoCampos em Quinta Jan 15, 2009 2:26 am

Sierpinski :D

Nada mais a dizer.
\emph{Ricardo Campos}\in \delta \bigcap q\overline{q}
O Matemático-Físico de 2008
Avatar do utilizador
RicardoCampos
top-Quark!
top-Quark!
 
Mensagens: 1280
Registado: Sexta Jun 01, 2007 3:49 pm
Localização: Figueira da Foz/Coimbra/DMUC/DFUC, Paris... E agora Zurique!

Re: A inércia de Sierpiński

Mensagempor hexphreak em Quinta Jan 15, 2009 12:39 pm

RicardoCampos Escreveu:Sierpinski :D

Nada mais a dizer.

Nada? Um matemático? Este problema devia ser mesmo para tu resolveres :P

Como já disse ao Bruno, para resolver basta um argumento de escala/semelhança e um teorema bem conhecido do Terence Tao...
Avatar do utilizador
hexphreak
top-Quark!
top-Quark!
 
Mensagens: 1959
Registado: Segunda Nov 05, 2007 8:52 pm
Localização: Maia/Porto

Re: A inércia de Sierpiński

Mensagempor RicardoCampos em Quinta Jan 15, 2009 1:19 pm

Só que pronto, a área final de um triângulo de Sierpinski é nula. Como é que ele pode ter massa?
\emph{Ricardo Campos}\in \delta \bigcap q\overline{q}
O Matemático-Físico de 2008
Avatar do utilizador
RicardoCampos
top-Quark!
top-Quark!
 
Mensagens: 1280
Registado: Sexta Jun 01, 2007 3:49 pm
Localização: Figueira da Foz/Coimbra/DMUC/DFUC, Paris... E agora Zurique!

Re: A inércia de Sierpiński

Mensagempor hexphreak em Quinta Jan 15, 2009 1:29 pm

RicardoCampos Escreveu:Só que pronto, a área final de um triângulo de Sierpinski é nula. Como é que ele pode ter massa?

É irrelevante, na verdade. Mas também podes considerar densidades lineares, e o triângulo tem dimensão superior a 1. Chama-lhe densidade fractal :P
Avatar do utilizador
hexphreak
top-Quark!
top-Quark!
 
Mensagens: 1959
Registado: Segunda Nov 05, 2007 8:52 pm
Localização: Maia/Porto

Re: A inércia de Sierpiński

Mensagempor heliomeiralins em Sexta Jan 16, 2009 6:39 pm

hexphreak Escreveu:
RicardoCampos Escreveu:Sierpinski :D

Nada mais a dizer.

Nada? Um matemático? Este problema devia ser mesmo para tu resolveres :P

Como já disse ao Bruno, para resolver basta um argumento de escala/semelhança e um teorema bem conhecido do Terence Tao...


Essa questão é bem tricky =)
última vez editado por heliomeiralins s Sábado Jan 17, 2009 10:28 pm, editado 1 vez no total
heliomeiralins
 
Mensagens: 2
Registado: Quinta Jan 15, 2009 8:32 pm
Localização: Recife - Brasil

Próximo

Voltar para Problemas tricky

Quem está ligado

Utilizadores a navegar neste fórum: Google [Bot] e 1 visitante