• No results found

Sykefravær og motivasjon

O tempo de execução do programa de cálculo depende do número de ondas planas (NOP) que se deseja discretizar o sistema simulado. Para fins de teste, escolherei um sistema for- mado por múltiplos poços quânticos de tal forma que será necessário um grande NOP para descrevermos bem o sistema. A amostra consiste de uma matriz de Al0.35Ga0.65As de 180 nm

com 8 poços de GaAs de 10 nm cada. O perfil de potencial para os elétrons é apresentado na figura8.1. Os parâmetros utilizados na simulação se encontram na tabela 8.1.

Tabela 8.1 – Parâmetros k.p para GaAs e Al0.35Ga0.65As (96).

Parâmetro GaAs Al0.35Ga0.65As

Parâmetro de rede (nm)

a 0.56532 0.5656

Parâmetros de energia (meV)

Eg 1.519 2.073

∆SO 0.341 0.32

Parâmetros de massa efetiva (~2/2m

0)

γ1 6.98 5.853

γ2 2.06 1.626

γ3 2.93 2.402

A 14.9254 10.4167

São vastas as aplicações tecnológicas de heterojunções em uma dimensão, e especial- mente os poços quânticos (ou múltiplos poços quânticos) de GaAs/AlGaAs. Como o GaAs possui um acoplamento spin-órbita fraco, ele é amplamente usado em dispositivos baseados em spintrônica, laser de cascata, etc. (97–100)

Se quisermos descrever esse perfil de potencial com um ponto a cada 0.2 nm necessitare- mos de aproximadamente 200 OP. A tabela 8.2 traz uma comparação entre alguns NOP’s em 1D e seus equivalentes, de tal forma a manter o mesmo tamanho de matriz, para 2D e 3D. Nota-se claramente que se tivermos um confinamento em mais de uma dimensão e quisermos manter a mesma discretização, teremos que aumentar o NOP e com isso o tamanho do Ha- miltoniano final. Relacionamos o NOP em 1D com seus equivalentes em 2D e 3D usando a relação abaixo:

8.1 Com o LOBPCG 79 ✁7✄✄ ✁75✄ ✁8✄✄ ✁85✄ ✁✝✄✄ ✁✝5✄ ✞✄✄✄ ✞✄5✄ ✞✁✄✄ -✁✄✄ -8✄ -60 -40 -20 0 20 40 60 80 100 z (nm) E n er gia (m eV )

Figura 8.1– Perfil de confinamento para os elétrons em uma heteroestrutura de GaAs/Al0.35Ga0.65As. Este perfil será usado para testar os tempos de execução

do programa de cálculo usando os métodos de diagonalização na CPU e os de minimização, tanto na CPU quanto na GPU.

com q = 2, 3.

Tabela 8.2 – Relação entre o número de ondas planas em 1D e seus equivalentes em 2D e 3D

Confinamento NOP

1D 50 100 200 300

2D 4,53 6,59 9,51 11.76

3D 1,83 2,43 3.19 3.72

Na notação Big O, ou seja, na notação que descreve o comportamento assintótico de uma função no limite que seu argumento tende ao infinito, temos que o tempo de execução para as funções de diagonalização direta (métodos exatos, não de minimização) vai com n3, onde n é

a dimensão da matriz. Já para os métodos de minimização, o limite é menor que n2. Assim,

teoricamente, a utilização do LOBPCG é justificável.

Vamos comparar o tempo de execução dos métodos e analisar como eles se comportam. O gráfico8.2 apresenta essa comparação para o LOBPCG tanto na CPU quanto na GPU. Por ser um método iterativo de minimização, nem todo ponto converge com o mesmo número de iterações. Assim os tempos coletados referem-se a uma média entre o tempo total de convergência e número de iterações levadas.

80 8 Resultados 0 0.05 0.1 0.15 0.2 0.25 10 20 30 40 50 60 70 80 Tempo (s) NOP GTX 285 Core2Duo 0.0001 0.001 0.01 0.1 1 10 NOP 0 0.1 0.2 0.3 0.4 0.5 0.6 50 100 150 200 250 Tempo (s) NOP GTX 580 Core i5 0.001 0.01 0.1 1 10 100 NOP a) b) d) c) ~0.066 s ~0.21 s

Figura 8.2– Comparação entre os tempos de execução de uma iteração do LOBPCG na CPU e na GPU. As linhas vermelhas representam a execução nas GPU, e as azuis na CPU. Os gráficos b) e d) estão em escala logarítmica para compararmos visualmente a inclinação das curvas. O programa foi executado em duas placas de vídeo distintas: uma com menos recursos, GTX 285 e outra com mais recursos, GTX 580; e em dois processadores distintos: um com menos recursos, Core2Duo e outro com mais recursos, Core i5.

GPU GTX 285 não possui suporte nativo à precisão dupla. Dessa maneira um número em precisão dupla é emulado por dois em precisão simples, aumentando em 4 vezes o tempo necessário para uma multiplicação, como mostrado na figura 8.2(a) e 8.2(c). A execução é levemente mais lenta na CPU Core2Duo do que na Core i5 simplesmente pelo fato da última ser mais rápida que a primeira.

Outra característica interessante de se notar é que nos dois casos a execução com um número menor de ondas planas favorece a CPU. Isso acontece porque existe uma latência maior entre a comunicação da memória RAM com a GPU do que com a CPU. Após um certo tamanho de matriz o tempo de execução na GPU supera essa latência é preferível executar na GPU.

Agora que sabemos que a partir de uma certo número de ondas planas é preferível usar a implementação do LOBPCG na GPU contra a da CPU, vamos ver se é preferível usar o LOBPCG ao invés do CHEEVX.

Em média, usando o pré-condicionador de Jacobi, cada ponto levou 20 iterações para convergir com uma precisão de 6 casas depois da vírgula. Então, no gráfico8.3, irei comparar a execução do CHEEVX com 20 iterações do LOBPCG na GPU e na CPU mais rápidas.

8.2 Coeficiente de absorção 81 0 5 10 15 20 25 30 50 100 150 200 250 Tempo (s) Cheevx - Core i5 LOBPCGx20 - GTX 580 LOBPCGx20 - Core i5 0.01 0.1 1 10 10 100 NOP Tempo (s) a) b)

Figura 8.3– Comparação entre os tempos de execução do CHEEVX e do LOBPCG. A linha vermelha corresponde à execução do CHEEVX na CPU, a azul de 20 iterações do LOBPCG na mesma CPU e a verde de 20 iterações do LOBPCG na GPU mais rápida. Em b) temos os tempos de execução em escala logarítmica para compararmos visualmente a inclinação das curvas.

Podemos observar que a partir de 150 OP a execução do LOBPCG na GPU é mais rápida que a execução na CPU, e ambas execuções são mais rápidas que a CPU para sistemas com mais de 100 OP em uma dimensão. Portanto, é possível simular sistemas mais complexos, utilizando o LOBPCG, em um computador de mesa, explorando o alto poder de processamento que as placas gráficas atuais fornecem.

8.2

Coeficiente de absorção

Quando se cresce NWs de InP a fase cristalina predominante é a WZ, ao contrário do bulk que é ZB (13, 32). Com o seu gap de cerca de 1.4 eV (em ambas as fases cristalinas), ele se torna ideal para o uso em telecomunicações e na fabricação de células solares, pois atua na faixa do infra-vermelho ao ultra violeta; além de ser um ótimo composto para aplicações de lógica ultra rápida (28, 40).

Para melhor entender as características que fazem dos NWs promissores a aplicações tec- nológicas de ponta, é necessário um entendimento teórico sobre suas propriedades óticas, assim como o efeito que o confinamento quântico exerce sobre ela. Para isso, aplico o formalismo

82 8 Resultados

desenvolvido nos capítulos 2e 3 para obter a estrutura de bandas de um NW de InP.

A partir da estrutura de bandas, calcularemos o poder (ou coeficiente) de absorção e o grau de polarização linear (GPL), dados pelas equações (4.1.23) e (4.1.28) respectivamente. Dessa forma poderemos estudar as diferenças entre as duas fases cristalinas, WZ e ZB, em que tais NWs são encontrados.