ที่เก็บนี้มีการใช้งานอัลกอริทึม HHL สำหรับเมทริกซ์ 4 x 4 เฉพาะ:
A = 1 / 4 * numpy . array ([[ 15 , 9 , 5 , - 3 ],
[ 9 , 15 , 3 , - 5 ],
[ 5 , 3 , 15 , - 9 ],
[ - 3 , - 5 , - 9 , 15 ]])
การใช้งานได้รับแรงบันดาลใจจากการออกแบบวงจรควอนตัมกระดาษสำหรับการแก้ปัญหาระบบเชิงเส้นของสมการเขียนโดย Yudong Cao, Anmer Daskin, Steven Frankel และ Saber Kais
ขั้นตอนการติดตั้งประกอบด้วยหลายขั้นตอนบางขั้นตอนเป็นทางเลือก:
python3 -m venv hhl_venv
source hhl_venv/bin/activate
git clone https://github.com/nelimee/quantum-hhl-4x4.git
cd quantum-hhl-4x4
pip install -r requirements.txt
python3 setup.py install
ไดเรกทอรีหลักประกอบด้วย:
LICENSE
อธิบายภายใต้ใบอนุญาตใดที่มีการแจกจ่ายรหัสนี้ สำหรับข้อมูลเพิ่มเติมไปอ่านบันทึกเกี่ยวกับส่วนสิทธิ์การใช้งานrequirements.txt
ที่สามารถใช้ในการติดตั้งการพึ่งพาทั้งหมดของซอฟต์แวร์setup.py
ที่ใช้ในการติดตั้งรหัสhhl4x4
ซึ่งมีรหัส Python ทั้งหมดhhl4x4
โฟลเดอร์ hhl4x4
มีรหัส Python ทั้งหมดที่ใช้ในการใช้อัลกอริทึม HHL สำหรับเมทริกซ์ A มันถูกจัดระเบียบใน 2 โฟลเดอร์และ 3 ไฟล์ Python:
custom_gates
มีการใช้งานของประตูควอนตัมที่ผู้ใช้กำหนดเช่นประตู Z
ที่ควบคุมเป็นสองเท่า (ประตู Z
ควบคุมโดย 2 qubits) หรือเกต RZZ ที่ควบคุม (การเลื่อนเฟสทั่วโลกที่ควบคุมได้) อัลกอริทึม HHL ถูกนำมาใช้เกตควอนตัมที่ผู้ใช้กำหนดไว้ในไฟล์ hhl4x4.py
utils
มีไฟล์ Python 2 ไฟล์: endianness.py
ใช้ดูแลการลงทะเบียน endianness และ registers.py
ที่ใช้ wrapper รอบคลาสการลงทะเบียนพื้นฐานที่ใช้โดย Qiskit4x4.py
: การใช้งานอัลกอริทึม HHL เต็มรูปแบบ เมื่อติดตั้งซอฟต์แวร์ (หลังจาก python setup.py install
) คุณสามารถเรียกใช้ไฟล์นี้ได้โดยพิมพ์คำสั่ง HHL4x4
ในเทอร์มินัลของคุณoptimise_parameters.py
: สคริปต์ที่ใช้ในการค้นหาพารามิเตอร์ที่ดีที่สุดสำหรับส่วนการจำลองของ Hamiltonian เมื่อติดตั้งซอฟต์แวร์ (หลังจาก python setup.py install
) คุณสามารถเรียกใช้ไฟล์นี้ได้โดยพิมพ์คำสั่ง HHL4x4_optimise_parameters
ในเทอร์มินัลของคุณ คุณสามารถดูตัวเลือกที่มีได้ด้วย HHL4x4_optimise_parameters --help
หมายเหตุ: คำสั่ง HHL4x4
หรือสคริปต์ 4x4.py จะสร้างไฟล์ 4x4.qasm
ที่มีรหัส OpenQasm ของอัลกอริทึม HHL ที่ใช้งานในไดเรกทอรีปัจจุบัน การสร้างภาพฮิสโตแกรมของสถานะควอนตัมสุดท้ายจะปรากฏขึ้นในตอนท้ายของโปรแกรม
ซอฟต์แวร์นี้ได้รับใบอนุญาตภายใต้ใบอนุญาต Cecill-B ใบอนุญาต CECILL-B บังคับใช้ข้อผูกพันสำหรับทุกคนที่ต้องการใช้ซอฟต์แวร์นี้ (ไม่ว่าด้วยวิธีใดก็ตาม) เพื่ออ้างถึงผู้เขียนและแหล่งที่มาดั้งเดิม
หากคุณต้องการใช้ซอฟต์แวร์นี้โปรดอ้างอิง:
หากคุณมีข้อสงสัยโปรดอ่านใบอนุญาต หากคุณยังมีข้อสงสัยหรือคำถามโปรดส่งอีเมลถึงฉันที่ [email protected]