

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Emulador de dispositivo quântico local
<a name="braket-local-emulator"></a>

Com a ferramenta de emulador local do Amazon Braket, você pode emular seus programas quânticos textuais localmente antes de executá-los no hardware quântico real. O emulador usa dados de calibração do dispositivo para validar os circuitos textuais, permitindo que você detecte problemas de compatibilidade mais cedo.

Além disso, o emulador local simula o ruído quântico do hardware por meio do seguinte processo:
+ Usando dados de calibração do dispositivo para construir o modelo de ruído
+ Aplicando ruído despolarizador em cada porta em seu circuito
+ Aplicando erro de leitura no final do circuito
+ Simulando o circuito ruidoso com um simulador de matriz de densidade local

Para obter mais informações sobre o uso de um emulador local, consulte [Emulação local para circuitos textuais no Amazon Braket no repositório](https://github.com/amazon-braket/amazon-braket-examples/blob/main/examples/braket_features/Device_emulation/01_Local_Emulation_for_Verbatim_Circuits_on_Amazon_Braket.ipynb). amazon-braket-examples GitHub

**Topics**
+ [Benefícios da emulação local](#braket-local-emulator-benefits)
+ [Criar um emulador local](#braket-create-local-emulator)

## Benefícios da emulação local
<a name="braket-local-emulator-benefits"></a>
+ Valide circuitos textuais em relação às restrições do dispositivo usando dados de calibração históricos ou em tempo real.
+ Depure problemas antes de enviar tarefas ao hardware quântico.
+ Compare emulações silenciosas e ruidosas com resultados de hardware para entender os efeitos de ruído.
+ Simplifique o fluxo de trabalho do desenvolvimento de algoritmos quânticos com reconhecimento de ruído.

## Criar um emulador local
<a name="braket-create-local-emulator"></a>

Um emulador de dispositivo quântico local pode ser criado diretamente de um dispositivo quântico ou de um conjunto de propriedades do dispositivo. Ao emular diretamente um dispositivo, o emulador usa os dados de calibração mais recentes do dispositivo instanciado. O exemplo de código a seguir demonstra como emular diretamente o dispositivo Rigetti's Ankaa-3.

```
from braket.aws.aws_device import AwsDevice

ankaa3 = AwsDevice("arn:aws:braket:us-west-1::device/qpu/rigetti/Ankaa-3")
ankaa3_emulator = ankaa3.emulator()
```

O exemplo a seguir mostra a criação de um emulador de dispositivo local a partir de um conjunto de propriedades do dispositivo Ankaa-3 no formato JSON. 

```
from braket.aws import AwsDevice
from braket.emulation.local_emulator import LocalEmulator
import json

# Instantiate the device
ankaa3 = AwsDevice("arn:aws:braket:us-west-1::device/qpu/rigetti/Ankaa-3")
ankaa3_properties = ankaa3.properties

# Put the Ankaa-3 properties in a file named ankaa3_device_properties.json
with open("ankaa3_device_properties.json", "w") as f:
    json.dump(ankaa3_properties.json(), f)

# Load the json into the ankaa3_data_json variable
with open("ankaa3_device_properties.json", "r") as json_file:
    ankaa3_data_json = json.load(json_file)

# Create the Ankaa-3 local emulator from the json file you created
ankaa3_emulator = LocalEmulator.from_json(ankaa3_data_json)
```

Você pode personalizar o exemplo da seguinte forma:
+ Usando propriedades de um dispositivo QPU diferente
+ Especificando um arquivo JSON diferente para o emulador
+ Alterando os valores das propriedades do dispositivo antes de instanciar o emulador