Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PhD defense

PhD defense

Slides from my PhD thesis defense "Forward modeling and inversion of gravitational fields in spherical coordinates".

More information at http://www.leouieda.com

Leonardo Uieda

April 29, 2016
Tweet

More Decks by Leonardo Uieda

Other Decks in Science

Transcript

  1. modelagem direta
    e
    inversão
    de campos gravitacionais em
    coordenadas esféricas
    Observatório Nacional – 29 de Abril de 2016

    View full-size slide

  2. Leonardo Uieda
    Valéria C F Barbosa (orientadora)

    View full-size slide

  3. A COORDENADORA DE PÓS-GRADUAÇÃO ADVERTE:
    Efeitos colaterais dessa defesa incluem:
    discussão
    discórdia
    crítica
    choro
    aprovação
    reprovação

    View full-size slide

  4. introdução

    View full-size slide

  5. conhecido
    topografia
    batimetria

    View full-size slide

  6. conhecido
    topografia
    batimetria
    crosta média
    manto médio

    View full-size slide

  7. bacias
    intrusões

    View full-size slide

  8. bacias
    intrusões
    crosta
    oceânica

    View full-size slide

  9. bacias
    intrusões
    crosta
    oceânica
    Moho

    View full-size slide

  10. bacias
    intrusões
    crosta
    oceânica
    Moho
    heterogeneidades

    View full-size slide

  11. GRACE – EUA/Alemanha
    2002 - 2017

    View full-size slide

  12. GOCE – ESA
    2009 - 2013

    View full-size slide

  13. distúrbio da
    gravidade
    (GGM05G)

    View full-size slide

  14. dados ✔
    subsuperfície
    aproximação esférica

    View full-size slide

  15. problema inverso

    View full-size slide

  16. problema inverso

    View full-size slide

  17. problema inverso
    modelagem
    direta

    View full-size slide

  18. problema inverso
    modelagem
    direta
    otimização

    View full-size slide

  19. problema inverso
    modelagem
    direta
    otimização regularização

    View full-size slide

  20. programação

    View full-size slide

  21. programa A programa B
    Novo método

    View full-size slide

  22. programa B
    modelagem direta
    aprox. esférica
    Novo método

    View full-size slide

  23. fatiando a terra
    modelagem direta
    otimização
    regularização, etc
    modelagem direta
    aprox. esférica
    Novo método

    View full-size slide

  24. fatiando a terra
    modelagem direta
    otimização
    regularização, etc
    método: inversão não-linear rápida
    aplicação: Moho da América do Sul
    modelagem direta
    aprox. esférica

    View full-size slide

  25. Introdução
    Tesseroids
    Fatiando a Terra
    Inversão Moho
    Conclusão

    View full-size slide

  26. Introdução
    Tesseroids
    Fatiando a Terra
    Inversão Moho
    Conclusão

    View full-size slide

  27. modelagem direta em coordenadas esféricas

    View full-size slide

  28. GEOPHYSICS
    Submetido: Mar 2015
    R1: Nov 2015
    Aceito: Abr 2016
    Geophysical Software and Algorithms

    View full-size slide

  29. tesseroide = prisma esférico

    View full-size slide

  30. g
    z
    =Gρ∭
    λ
    1
    ϕ
    1
    r
    1
    λ2
    ϕ2
    r
    2
    K
    z
    dr d ϕd λ

    View full-size slide

  31. g
    z
    =Gρ∭
    λ
    1
    ϕ
    1
    r
    1
    λ2
    ϕ2
    r
    2
    K
    z
    dr d ϕd λ
    cte.

    View full-size slide

  32. g
    z
    =Gρ∭
    λ
    1
    ϕ
    1
    r
    1
    λ2
    ϕ2
    r
    2
    K
    z
    dr d ϕd λ
    cte.
    densidade

    View full-size slide

  33. g
    z
    =Gρ∭
    λ
    1
    ϕ
    1
    r
    1
    λ2
    ϕ2
    r
    2
    K
    z
    dr d ϕd λ
    cte.
    densidade kernel
    (Grombein et al., 2013)

    View full-size slide

  34. Quadratura
    Gauss-Legendre

    View full-size slide


  35. a
    b
    f (x)dx≈
    b−a
    2

    i=1
    N
    W
    i
    f (x
    i
    )

    View full-size slide


  36. a
    b
    f (x)dx≈
    b−a
    2

    i=1
    N
    W
    i
    f (x
    i
    )

    View full-size slide


  37. a
    b
    f (x)dx≈
    b−a
    2

    i=1
    N
    W
    i
    f (x
    i
    )
    ordem

    View full-size slide


  38. a
    b
    f (x)dx≈
    b−a
    2

    i=1
    N
    W
    i
    f (x
    i
    )
    pesos
    ordem

    View full-size slide


  39. a
    b
    f (x)dx≈
    b−a
    2

    i=1
    N
    W
    i
    f (x
    i
    )
    pesos
    raízes de P
    N
    (x)
    ordem

    View full-size slide


  40. Ω
    K
    z
    (r ,ϕ,λ)d Ω

    View full-size slide


  41. Ω
    K
    z
    (r ,ϕ,λ)d Ω
    A ∑
    i=1
    N
    r

    j=1
    N
    ϕ

    k=1
    N
    λ
    W
    i
    W
    j
    W
    k
    K
    z
    (r
    i
    ,ϕj
    ,λk
    )

    View full-size slide

  42. A ∑
    i=1
    N
    r

    j=1
    N
    ϕ

    k=1
    N
    λ
    W
    i
    W
    j
    W
    k
    K
    z
    (r
    i
    ,ϕj
    ,λk
    )

    Ω
    K
    z
    (r ,ϕ,λ)d Ω
    massa pontual

    View full-size slide

  43. Ku (1977)
    dist. até
    observação
    dist. entre
    massas
    <

    View full-size slide

  44. + massas + tesseroides

    View full-size slide

  45. + massas + tesseroides

    View full-size slide

  46. if d/L
    λ
    < D:

    View full-size slide

  47. if d/L
    λ
    < D:
    Divide em λ

    View full-size slide

  48. if d/LФ < D:

    View full-size slide

  49. if d/LФ < D:
    Divide em Ф

    View full-size slide

  50. if d/Lr < D:

    View full-size slide

  51. if d/Lr < D:
    Divide em r

    View full-size slide

  52. pilha
    adicionar no
    topo da pilha

    View full-size slide

  53. pilha
    “pop”

    View full-size slide

  54. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  55. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  56. pilha
    “pop”

    View full-size slide

  57. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  58. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  59. pilha
    “pop”

    View full-size slide

  60. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  61. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  62. pilha
    g total += g tesseroide

    View full-size slide

  63. pilha
    “pop”

    View full-size slide

  64. pilha
    if d/Lx < D:
    Divide em x

    View full-size slide

  65. pilha
    vazia
    fim
    g total

    View full-size slide

  66. D=1 4 tesseroides

    View full-size slide

  67. D=2 38 tesseroides

    View full-size slide

  68. D=6 936 tesseroides

    View full-size slide

  69. 1. pólo h=2km 1°x 1°x 1km
    2. equador h=2km 1°x 1°x 1km
    3. pólo h=260km 1°x 1°x 1km
    4. pólo h=2km 30°x 30°x 1km
    Casca x Quadratura

    View full-size slide

  70. 0.1% erro
    0.1% erro
    0.1% erro

    View full-size slide

  71. 29 programas
    linguagem C
    open-source: BSD license

    View full-size slide

  72. linha de comando

    View full-size slide

  73. tesseroids.leouieda.com

    View full-size slide

  74. 34 citações
    (google scholar)
    tesseroids.leouieda.com

    View full-size slide

  75. Discretização adaptativa:
    algoritmo melhor definido pilha x recursivo

    View full-size slide

  76. Discretização adaptativa:
    algoritmo melhor definido pilha x recursivo
    Quantificação do erro:
    D ótimo Ds diferentes: V, gz, gzz

    View full-size slide

  77. Discretização adaptativa:
    algoritmo melhor definido pilha x recursivo
    Quantificação do erro:
    D ótimo Ds diferentes: V, gz, gzz
    Implementação:
    open-source usuários desenvolvedores

    View full-size slide

  78. programa B
    modelagem direta
    aprox. esférica
    Novo método

    View full-size slide

  79. Introdução
    Tesseroids
    Fatiando a Terra
    Inversão Moho
    Conclusão

    View full-size slide

  80. modelagem direta e inversa para geofísica
    fatiando a terra

    View full-size slide

  81. SciPy 2013
    “Modeling the Earth with Fatiando a Terra”

    View full-size slide

  82. SciPy 2013
    “Modeling the Earth with Fatiando a Terra”
    v0.1

    View full-size slide

  83. SciPy 2013
    “Modeling the Earth with Fatiando a Terra”
    v0.1
    YouTube

    View full-size slide

  84. fatiando.org

    View full-size slide

  85. ~950 downloads/mês
    7 citações
    fatiando.org

    View full-size slide

  86. código
    github.com

    View full-size slide

  87. juntar código
    disciplinas, teses
    dissertações, etc

    View full-size slide

  88. biblioteca
    funções, classes, etc

    View full-size slide

  89. fácil de aprender
    rápido de implementar
    open-source
    “bateries included”

    View full-size slide

  90. 1 código
    ++ usuários

    View full-size slide

  91. 1 código
    ++ programadores

    View full-size slide

  92. a biblioteca

    View full-size slide

  93. fatiando. gridder
    mesher
    utils
    vis
    gravmag
    seismic
    inversion
    Módulos

    View full-size slide

  94. fatiando. gridder
    mesher
    utils
    vis
    gravmag
    seismic
    inversion
    Módulos

    View full-size slide

  95. from fatiando.mesher import Prism
    modelo = [
    Prism(0, 1000, 0, 2000, 1500, 2500,
    props={'magnetization': [4,-1,3]})]
    from fatiando.vis import myv
    myv.figure()
    myv.prisms(modelo)
    myv.show()
    In:
    Out:

    View full-size slide

  96. from fatiando import gridder
    area = (-5000, 5000, -5000, 5000)
    shape = (50, 50)
    x, y, z = gridder.regular(area, shape, z=0)
    print(x)
    print(x.size)
    In:
    Out: [-5000. -5000. -5000. ... 5000. 5000. 5000.]
    2500

    View full-size slide

  97. from fatiando.gravmag import prism
    mag = prism.tf(x, y, z, modelo,
    inc=-60, dec=20)
    import matplotlib.pyplot as plt
    plt.tricontourf(y, x, mag, 50, cmap="RdBu_r")
    plt.colorbar().set_label('nT')
    In:
    Out:

    View full-size slide

  98. from fatiando.gravmag import transform
    up = transform.upcontinue(x, y, mag, shape,
    1500)
    plt.tricontourf(y, x, up, 20, cmap="RdBu_r")
    plt.colorbar().set_label('nT')
    In:
    Out:

    View full-size slide

  99. from fatiando.mesher import Tesseroid
    mod = [Tesseroid(-60, -50, -25, -20, 2000, 0,
    props={'density': 2670})]
    myv.figure()
    myv.tesseroids(mod, scale=(1, 1, 500))
    myv.earth()
    myv.continents()
    In:
    Out:

    View full-size slide

  100. lon, lat, h = gridder.scatter(
    (-70, -40, -35, -10), 500, z=250e3)
    from fatiando.gravmag import tesseroid
    g = tesseroid.gz(lon, lat, h, mod)
    plt.tricontourf(lon, lat, g, 50, cmap="Reds")
    plt.colorbar()
    In:
    Out:

    View full-size slide

  101. fatiando. gridder
    mesher
    utils
    vis
    gravmag
    seismic
    inversion
    Módulos

    View full-size slide

  102. fatiando. gridder
    mesher
    utils
    vis
    gravmag
    seismic
    inversion
    Módulos

    View full-size slide

  103. fatiando.inversion

    View full-size slide

  104. y
    1
    =a x
    1
    +b
    y
    2
    =a x
    2
    +b

    y
    N
    =a x
    N
    +b

    View full-size slide

  105. [y
    1
    y
    2

    y
    N
    ]=
    [x
    1
    1
    x
    2
    1
    ⋮ ⋮
    x
    N
    1
    ][a
    b
    ]

    View full-size slide

  106. [y
    1
    y
    2

    y
    N
    ]=
    [x
    1
    1
    x
    2
    1
    ⋮ ⋮
    x
    N
    1
    ][a
    b
    ]
    ¯
    d

    View full-size slide

  107. [y
    1
    y
    2

    y
    N
    ]=
    [x
    1
    1
    x
    2
    1
    ⋮ ⋮
    x
    N
    1
    ][a
    b
    ]
    ¯
    d ¯
    ¯
    A

    View full-size slide

  108. [y
    1
    y
    2

    y
    N
    ]=
    [x
    1
    1
    x
    2
    1
    ⋮ ⋮
    x
    N
    1
    ][a
    b
    ]
    ¯
    d ¯
    p
    ¯
    ¯
    A

    View full-size slide

  109. [y
    1
    y
    2

    y
    N
    ]=
    [x
    1
    1
    x
    2
    1
    ⋮ ⋮
    x
    N
    1
    ][a
    b
    ]
    ¯
    d ¯
    p
    ¯
    ¯
    A
    dados
    preditos
    matriz
    Jacobiana
    vetor de
    parâmetros

    View full-size slide

  110. ϕ=‖¯
    do−¯
    d‖2

    View full-size slide

  111. ^
    ¯
    p
    ϕ=‖¯
    do−¯
    d‖2

    View full-size slide

  112. ^
    ¯
    p
    ϕ=‖¯
    do−¯
    d‖2

    View full-size slide

  113. ^
    ¯
    p
    ϕ=‖¯
    do−¯
    d‖2
    minimizar

    View full-size slide

  114. ^
    ¯
    p
    ϕ=‖¯
    do−¯
    d‖2
    minimizar
    função
    do ajuste
    (misfit)

    View full-size slide

  115. específico genérico

    View full-size slide

  116. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A

    View full-size slide

  117. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A
    ϕ=‖¯
    do−¯
    d‖2
    minimizar

    View full-size slide

  118. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A
    ϕ=‖¯
    do−¯
    d‖2
    minimizar
    usuário
    implementa

    View full-size slide

  119. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A
    ϕ=‖¯
    do−¯
    d‖2
    minimizar
    fatiando.inversion

    View full-size slide

  120. from fatiando.inversion import Misfit
    class Regressao(Misfit):
    def __init__(self, x, y):
    Misfit.__init__(self, data=y, nparams=2,
    islinear=True)
    self.x = x
    def predicted(self, p):
    a, b = p
    return a*self.x + b
    def jacobian(self, p):
    A = np.empty((self.ndata,
    self.nparams))
    A[:, 0] = self.x
    A[:, 1] = 1
    return A

    View full-size slide

  121. from fatiando.inversion import Misfit
    class Regressao(Misfit):
    def __init__(self, x, y):
    Misfit.__init__(self, data=y, nparams=2,
    islinear=True)
    self.x = x
    def predicted(self, p):
    a, b = p
    return a*self.x + b
    def jacobian(self, p):
    A = np.empty((self.ndata,
    self.nparams))
    A[:, 0] = self.x
    A[:, 1] = 1
    return A

    View full-size slide

  122. from fatiando.inversion import Misfit
    class Regressao(Misfit):
    def __init__(self, x, y):
    Misfit.__init__(self, data=y, nparams=2,
    islinear=True)
    self.x = x
    def predicted(self, p):
    a, b = p
    return a*self.x + b
    def jacobian(self, p):
    A = np.empty((self.ndata,
    self.nparams))
    A[:, 0] = self.x
    A[:, 1] = 1
    return A

    View full-size slide

  123. from fatiando.inversion import Misfit
    class Regressao(Misfit):
    def __init__(self, x, y):
    Misfit.__init__(self, data=y, nparams=2,
    islinear=True)
    self.x = x
    def predicted(self, p):
    a, b = p
    return a*self.x + b
    def jacobian(self, p):
    A = np.empty((self.ndata,
    self.nparams))
    A[:, 0] = self.x
    A[:, 1] = 1
    return A
    y
    i
    =a x
    i
    +b

    View full-size slide

  124. from fatiando.inversion import Misfit
    class Regressao(Misfit):
    def __init__(self, x, y):
    Misfit.__init__(self, data=y, nparams=2,
    islinear=True)
    self.x = x
    def predicted(self, p):
    a, b = p
    return a*self.x + b
    def jacobian(self, p):
    A = np.empty((self.ndata,
    self.nparams))
    A[:, 0] = self.x
    A[:, 1] = 1
    return A
    ¯
    ¯
    A
    y
    i
    =a x
    i
    +b

    View full-size slide

  125. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A
    ϕ=‖¯
    do−¯
    d‖2
    minimizar
    usuário
    implementa

    View full-size slide

  126. específico genérico
    y
    i
    =a x
    i
    +b
    ¯
    ¯
    A
    ϕ=‖¯
    do−¯
    d‖2
    minimizar
    fatiando.inversion

    View full-size slide

  127. reg = Regressao(x, yo)
    reg.fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]

    View full-size slide

  128. reg = Regressao(x, yo)
    reg.fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]
    a b

    View full-size slide

  129. reg = Regressao(x, yo)
    reg.fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]
    plt.plot(x, yo, 'ok')
    plt.plot(x, reg.predicted(), '-r')
    In:
    Out:
    a b

    View full-size slide

  130. reg.config('newton', initial=[1, 1]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]

    View full-size slide

  131. reg.config('newton', initial=[1, 1]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]
    reg.config('levmarq', initial=[0, 0]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.39562568 4980.21718193]

    View full-size slide

  132. reg.config('newton', initial=[1, 1]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]
    reg.config('levmarq', initial=[0, 0]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.39562568 4980.21718193]
    reg.config('acor',
    bounds=[0, 1000, 0, 10e5]).fit()
    print(reg.estimate_)
    In:
    Out: [ 20.39543101 4980.22844959]

    View full-size slide

  133. ϕ(¯
    p)=‖¯
    do−¯
    d‖2
    minimizar

    View full-size slide

  134. ϕ(¯
    p)=‖¯
    do−¯
    d‖2
    minimizar instável

    View full-size slide

  135. Γ(¯
    p)=ϕ(¯
    p)+μθ(¯
    p)
    ϕ(¯
    p)=‖¯
    do−¯
    d‖2
    minimizar instável
    minimizar

    View full-size slide

  136. Γ(¯
    p)=ϕ(¯
    p)+μθ(¯
    p)
    ϕ(¯
    p)=‖¯
    do−¯
    d‖2
    minimizar instável
    escalar
    minimizar
    função
    regularizadora

    View full-size slide

  137. from fatiando.inversion import Damping
    phi = Regressao(x, yo)
    gamma = phi + 10e-7*Damping(nparams=2)
    In:

    View full-size slide

  138. from fatiando.inversion import Damping
    phi = Regressao(x, yo)
    gamma = phi + 10e-7*Damping(nparams=2)
    In:
    Γ(¯
    p)=ϕ(¯
    p)+μθ(¯
    p)

    View full-size slide

  139. from fatiando.inversion import Damping
    phi = Regressao(x, yo)
    gamma = phi + 10e-7*Damping(nparams=2)
    In:
    Γ(¯
    p)=ϕ(¯
    p)+μθ(¯
    p)
    gamma.fit()
    print(gamma.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]

    View full-size slide

  140. from fatiando.inversion import Damping
    phi = Regressao(x, yo)
    gamma = phi + 10e-7*Damping(nparams=2)
    In:
    Γ(¯
    p)=ϕ(¯
    p)+μθ(¯
    p)
    gamma.fit()
    print(gamma.estimate_)
    In:
    Out: [ 20.395431 4980.22844991]
    gamma.config('acor',
    bounds=[0, 1000, 0, 10e5]).fit()
    print(gamma.estimate_)
    In:
    Out: [ 20.14654754 4992.15040076]

    View full-size slide

  141. biblioteca: funções e classes
    fatiando a terra

    View full-size slide

  142. biblioteca: funções e classes
    modelagem, processamento, visualização
    fatiando a terra

    View full-size slide

  143. biblioteca: funções e classes
    modelagem, processamento, visualização
    inversão: fatiando.inversion
    fatiando a terra

    View full-size slide

  144. biblioteca: funções e classes
    modelagem, processamento, visualização
    inversão: fatiando.inversion
    Simples Complexos (reais)
    fatiando a terra

    View full-size slide

  145. biblioteca: funções e classes
    modelagem, processamento, visualização
    inversão: fatiando.inversion
    Simples Complexos (reais)
    Caching
    Matrizes esparsas
    BLAS, LAPACK, MKL
    fatiando a terra

    View full-size slide

  146. Usuários: downloads, citações

    View full-size slide

  147. Usuários: downloads, citações
    Colaboradores: locais e externos

    View full-size slide

  148. Open-source: BSD license
    Usuários: downloads, citações
    Colaboradores: locais e externos

    View full-size slide

  149. Open-source: BSD license
    Usuários: downloads, citações
    Colaboradores: locais e externos
    fatiando.org

    View full-size slide

  150. Open-source: BSD license
    Usuários: downloads, citações
    Colaboradores: locais e externos
    fatiando.org
    github.com/fatiando

    View full-size slide

  151. fatiando.org

    View full-size slide

  152. fatiando a terra
    modelagem direta
    otimização
    regularização, etc
    modelagem direta
    aprox. esférica
    Novo método

    View full-size slide

  153. Introdução
    Tesseroids
    Fatiando a Terra
    Inversão Moho
    Conclusão

    View full-size slide

  154. Inversão não-linear
    em
    coordenadas esféricas
    com aplicação na Moho da América do Sul
    com aplicação na Moho da América do Sul
    rápida

    View full-size slide

  155. Grid de observações

    View full-size slide

  156. 1 tesseroide para cada

    View full-size slide

  157. parâmetros = h
    h

    View full-size slide

  158. Estimar
    a partir de ¯
    do
    ¯
    p

    View full-size slide

  159. inversão
    não-linear

    View full-size slide

  160. d
    i
    =f
    i

    p)
    modelagem direta
    (tesseroides)

    View full-size slide

  161. ¯
    r= ¯
    do−¯
    d
    Resíduos

    View full-size slide

  162. φ(¯
    p)=‖¯
    r‖2
    Minimizar

    View full-size slide

  163. Gauss-Newton

    View full-size slide

  164. ¯
    p0
    ¯
    p1=¯
    p0+ ¯
    Δ p0

    View full-size slide

  165. ( ¯
    ¯
    AkT ¯
    ¯
    Ak) ¯
    Δ pk= ¯
    ¯
    AkT [ ¯
    do−¯
    d(¯
    pk)]
    ¯
    p0
    ¯
    p1=¯
    p0+ ¯
    Δ p0

    View full-size slide

  166. ( ¯
    ¯
    AkT ¯
    ¯
    Ak) ¯
    Δ pk= ¯
    ¯
    AkT [ ¯
    do−¯
    d(¯
    pk)]
    ¯
    p0
    ¯
    p1=¯
    p0+ ¯
    Δ p0
    A
    i j
    =
    ∂ f
    i
    ∂ p
    j
    Jacobiana

    View full-size slide

  167. ( ¯
    ¯
    AkT ¯
    ¯
    Ak) ¯
    Δ pk= ¯
    ¯
    AkT [ ¯
    do−¯
    d(¯
    pk)]
    ¯
    p0
    ¯
    p1=¯
    p0+ ¯
    Δ p0
    A
    i j
    =
    ∂ f
    i
    ∂ p
    j
    Jacobiana
    mal posto

    View full-size slide

  168. Regularização

    View full-size slide

  169. θ(¯
    p)=‖¯
    ¯
    R ¯
    p‖2
    Suavidade

    View full-size slide

  170. Γ(¯
    p) = φ + μθ
    Função objetivo

    View full-size slide

  171. Γ(¯
    p) = φ + μθ
    Função objetivo
    ajuste

    View full-size slide

  172. Γ(¯
    p) = φ + μθ
    Função objetivo
    ajuste
    regularização

    View full-size slide

  173. Γ(¯
    p) = φ + μθ
    Função objetivo
    ajuste
    regularização
    balanço

    View full-size slide

  174. Gauss-Newton
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A + μ ¯
    ¯
    RT ¯
    ¯
    R)−1[
    ¯
    ¯
    AT
    ¯
    rk−μ ¯
    ¯
    RT ¯
    ¯
    R ¯
    pk ]

    View full-size slide

  175. Gauss-Newton
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A + μ ¯
    ¯
    RT ¯
    ¯
    R)−1[
    ¯
    ¯
    AT
    ¯
    rk−μ ¯
    ¯
    RT ¯
    ¯
    R ¯
    pk ]
    custoso
    (computacionalmente)

    View full-size slide

  176. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  177. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  178. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  179. ¯
    Δ p= ¯
    r
    2πG Δρ

    View full-size slide

  180. ¯
    Δ p= ¯
    r
    2πG Δρ
    ∂ platôde Bouguer
    ∂h

    View full-size slide

  181. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  182. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  183. rápido
    pouca memória
    converge

    View full-size slide

  184. instável
    regularização

    View full-size slide

  185. Silva et al.
    (2014)

    View full-size slide

  186. Bott
    Gauss-Newton
    caso
    particular

    View full-size slide

  187. Bott
    Gauss-Newton
    caso
    particular

    View full-size slide

  188. caso
    particular
    ¯
    Δ p= ¯
    r
    2πG Δρ
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A)−1 ¯
    ¯
    AT
    ¯
    r

    View full-size slide

  189. caso
    particular
    ¯
    Δ p= ¯
    r
    2πG Δρ
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A)−1 ¯
    ¯
    AT
    ¯
    r

    View full-size slide

  190. caso
    particular
    ¯
    Δ p= ¯
    r
    2πG Δρ
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A)−1 ¯
    ¯
    AT
    ¯
    r
    A
    ii
    =2πGΔρ
    A
    ij
    =0 para i≠ j

    View full-size slide

  191. (2πG Δρ 0 ⋯ 0
    0 2πGΔρ ⋯ 0
    ⋮ ⋮ ⋱ ⋮
    0 0 ⋯ 2πGΔρ
    )
    ~
    A

    View full-size slide

  192. nesse
    trabalho

    View full-size slide

  193. Gauss-Newton
    ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A)−1 ¯
    ¯
    AT [¯
    do−¯
    d(¯
    pk)]

    View full-size slide

  194. ¯
    Δ p=( ¯
    ¯
    AT ¯
    ¯
    A)−1 ¯
    ¯
    AT [¯
    do−¯
    d(¯
    pk)]
    Gauss-Newton
    tesseroides

    View full-size slide

  195. ¯
    Δ p=(
    ~
    AT ~
    A)−1 ~
    AT [¯
    do−¯
    d(¯
    pk)]
    Gauss-Newton
    tesseroides
    ~
    A
    ii
    =2πGΔρ
    i

    View full-size slide

  196. regularização
    suavidade

    View full-size slide

  197. ¯
    Δ p=(
    ~
    AT ~
    A+μ ¯
    ¯
    RT ¯
    ¯
    R)−1[
    ~
    AT
    ¯
    rk−μ ¯
    ¯
    RT ¯
    ¯
    R ¯
    pk ]

    View full-size slide

  198. esparsas
    ¯
    Δ p=(
    ~
    AT ~
    A+μ ¯
    ¯
    RT ¯
    ¯
    R)−1[
    ~
    AT
    ¯
    rk−μ ¯
    ¯
    RT ¯
    ¯
    R ¯
    pk ]

    View full-size slide

  199. esparsas
    ~99.8% tempo de computação
    ~
    AT
    ¯
    rk−μ ¯
    ¯
    RT ¯
    ¯
    R ¯
    pk ]
    ¯
    Δ p=(
    ~
    AT ~
    A+μ ¯
    ¯
    RT ¯
    ¯
    R)−1[

    View full-size slide

  200. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r

    View full-size slide

  201. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r
    Bott

    View full-size slide

  202. 1. Construir
    2. Sistema linear
    3. Calcular
    ¯
    ¯
    A
    ¯
    r
    matrizes esparsas
    Bott

    View full-size slide

  203. rápido
    pouca memória
    converge

    View full-size slide

  204. instável
    regularização

    View full-size slide

  205. instável
    regularização

    View full-size slide

  206. implementação

    View full-size slide

  207. scipy (matrizes esparsas)

    View full-size slide

  208. estimar
    hiperparâmetros

    View full-size slide

  209. −Δρ +Δρ

    View full-size slide

  210. Γ(¯
    p) = φ + μθ
    Função objetivo
    ajuste
    regularização
    balanço

    View full-size slide

  211. validação cruzada

    View full-size slide

  212. validação cruzada
    μ

    View full-size slide

  213. validação cruzada
    μ
    z
    ref
    Δρ

    View full-size slide

  214. validação cruzada
    μ
    h
    ref
    Δρ

    View full-size slide

  215. Separar os dados
    ¯
    do

    View full-size slide

  216. Separar os dados
    ¯
    d
    inv
    o
    ¯
    do

    View full-size slide

  217. Separar os dados
    ¯
    d
    inv
    o ¯
    d
    test
    o
    ¯
    do

    View full-size slide

  218. para em :
    μn
    [μ1,
    …,μN
    ]

    View full-size slide

  219. para em :
    μn
    inversão: ¯
    d
    inv
    o ^
    ¯
    pn
    [μ1,
    …,μN
    ]

    View full-size slide

  220. para em :
    μn
    inversão: ¯
    d
    inv
    o
    ¯
    d
    test
    n
    ^
    ¯
    pn
    prever
    ^
    ¯
    pn
    [μ1,
    …,μN
    ]

    View full-size slide

  221. para em :
    μn
    inversão: ¯
    d
    inv
    o
    ¯
    d
    test
    n
    ^
    ¯
    pn
    prever
    ^
    ¯
    pn
    MSE
    n
    =
    ‖¯
    d
    test
    o −¯
    d
    test
    n‖2
    N
    test
    [μ1,
    …,μN
    ]

    View full-size slide

  222. MSE
    μ
    melhor μ

    View full-size slide

  223. Separar os dados
    ¯
    d
    inv
    o ¯
    d
    test
    o
    ¯
    do

    View full-size slide

  224. dado completo

    View full-size slide

  225. dado inversão

    View full-size slide

  226. dado teste dado inversão

    View full-size slide

  227. validação cruzada
    μ
    z
    ref
    Δρ

    View full-size slide

  228. validação cruzada
    μ
    z
    ref
    Δρ

    View full-size slide

  229. estimativas
    pontuais
    ¯
    z
    s
    o

    View full-size slide

  230. Δρ
    z
    ref
    l, m

    View full-size slide

  231. para cada e :
    Δρ
    m
    z
    ref ,l

    View full-size slide

  232. para cada e :
    Δρ
    m
    inversão: ¯
    d
    inv
    o ^
    ¯
    pl ,m
    z
    ref ,l

    View full-size slide

  233. para cada e :
    Δρ
    m
    inversão: ¯
    d
    inv
    o
    ¯
    z
    s
    l ,m
    ^
    ¯
    pl ,m
    interpolar ^
    ¯
    pl ,m
    z
    ref ,l

    View full-size slide

  234. para cada e :
    Δρ
    m
    inversão: ¯
    d
    inv
    o
    ¯
    z
    s
    l ,m
    ^
    ¯
    pl ,m
    interpolar ^
    ¯
    pl ,m
    MSE
    l,m
    =
    ‖¯
    z
    s
    o−¯
    z
    s
    l,m‖2
    N
    s
    z
    ref ,l

    View full-size slide

  235. Δρ
    Melhor e
    Δρ z
    ref
    z
    ref

    View full-size slide

  236. Moho
    CRUST1.0
    Δρ=350 kg.m−3
    z
    ref
    =30 km

    View full-size slide

  237. Δρ=350 kg.m−3
    z
    ref
    =30 km
    verdadeiro

    View full-size slide

  238. América
    do Sul

    View full-size slide

  239. Assumpção et al. (2013)

    View full-size slide

  240. Baseado em Bott (1960) e Silva et al. (2014)
    Tesseroides
    Gauss-Newton + Regularização
    Matrizes esparsas
    Validação cruzada
    Novo método
    μ Δρ z
    ref

    View full-size slide

  241. Compatível com soluções anteriores (grav e sismo)
    Correções (topo e sedimentos) apropriadas
    ~6 km desvio padrão com sísmica
    Diferença grande concentrada nos Andes
    Resolução pode ser falsa
    Depende de correções corretas
    Difícil estimar o erro
    Moho América do Sul

    View full-size slide

  242. Compatível com soluções anteriores (grav e sismo)
    Correções (topo e sedimentos) apropriadas
    ~6 km desvio padrão com sísmica
    Diferença grande concentrada nos Andes
    Resolução pode ser falsa
    Depende de correções corretas
    Difícil estimar o erro
    Moho América do Sul

    View full-size slide

  243. Introdução
    Tesseroids
    Fatiando a Terra
    Inversão Moho
    Conclusão

    View full-size slide

  244. conclusões
    finais

    View full-size slide

  245. programa A programa B
    Novo método

    View full-size slide

  246. fatiando a terra
    modelagem direta
    otimização
    regularização, etc
    método: inversão não-linear rápida
    aplicação: Moho da América do Sul
    modelagem direta
    aprox. esférica

    View full-size slide

  247. Algoritmo aprimorado
    Quantificação do erro
    Usuários
    Desenvolvedores
    Desenvolvimento estagnado

    View full-size slide

  248. Algoritmo aprimorado
    Quantificação do erro
    Usuários
    Desenvolvedores
    Desenvolvimento estagnado

    View full-size slide

  249. fatiando a terra
    Biblioteca em Python
    Vários módulos
    Pesquisa + educação
    Usuários + desenvolvedores
    Além dessa tese

    View full-size slide

  250. fatiando a terra
    Facilitar a participação:
    Guia do desenvolvedor
    Guia do usuário
    Workshop
    Videos?

    View full-size slide

  251. Inversão rápida + Moho Am. do Sul
    Método novo + eficiente
    Approx. esférica
    Python + Fatiando a Terra
    Depende das correções
    Incerteza

    View full-size slide

  252. Inversão rápida + Moho Am. do Sul
    Método novo + eficiente
    Approx. esférica
    Python + Fatiando a Terra
    Depende das correções
    Incerteza

    View full-size slide

  253. código + dados + figuras
    pinga-lab.org
    leouieda.com

    View full-size slide

  254. https://xkcd.com/1403

    View full-size slide