index.html 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta name="generator" content="rustdoc">
  7. <meta name="description" content="API documentation for the Rust `qcgpu` crate.">
  8. <meta name="keywords" content="rust, rustlang, rust-lang, qcgpu">
  9. <title>qcgpu - Rust</title>
  10. <link rel="stylesheet" type="text/css" href="../normalize.css">
  11. <link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle">
  12. <link rel="stylesheet" type="text/css" href="../dark.css">
  13. <link rel="stylesheet" type="text/css" href="../main.css" id="themeStyle">
  14. <script src="../storage.js"></script>
  15. </head>
  16. <body class="rustdoc mod">
  17. <!--[if lte IE 8]>
  18. <div class="warning">
  19. This old browser is unsupported and will most likely display funky
  20. things.
  21. </div>
  22. <![endif]-->
  23. <nav class="sidebar">
  24. <div class="sidebar-menu">&#9776;</div>
  25. <p class='location'>Crate qcgpu</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#reexports">Re-exports</a></li><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></div><p class='location'></p><script>window.sidebarCurrent = {name: 'qcgpu', ty: 'mod', relpath: '../'};</script></div>
  26. </nav>
  27. <div class="theme-picker">
  28. <button id="theme-picker" aria-label="Pick another theme!">
  29. <img src="../brush.svg" width="18" alt="Pick another theme!">
  30. </button>
  31. <div id="theme-choices"></div>
  32. </div>
  33. <script src="../theme.js"></script>
  34. <nav class="sub">
  35. <form class="search-form js-only">
  36. <div class="search-container">
  37. <input class="search-input" name="search"
  38. autocomplete="off"
  39. placeholder="Click or press ‘S’ to search, ‘?’ for more options…"
  40. type="search">
  41. </div>
  42. </form>
  43. </nav>
  44. <section id='main' class="content">
  45. <h1 class='fqn'><span class='in-band'>Crate <a class="mod" href=''>qcgpu</a></span><span class='out-of-band'><span id='render-detail'>
  46. <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">
  47. [<span class='inner'>&#x2212;</span>]
  48. </a>
  49. </span><a class='srclink' href='../src/qcgpu/lib.rs.html#1-33' title='goto source code'>[src]</a></span></h1>
  50. <div class='docblock'><p>An Open Source, High Performance &amp; Hardware Accelerated, Quantum Computer Simulator in Rust</p>
  51. <p>This crate is a library with the aim to provide fast and effecient simulation of algorithms
  52. for quantum computers, while also being easy to use and abstracting away the management of the
  53. OpenCL Devices</p>
  54. <p>The best place to start with this library is with the <a href="https://qcgpu.github.io/qcgpu/book">user guide</a>,
  55. along with the docs (you're looking at them) and the <a href="https://github.com/QCGPU/QCGPU-rust">source code</a></p>
  56. <h2 id="features" class="section-header"><a href="#features">Features</a></h2>
  57. <ul>
  58. <li>Simulation of arbitrary quantum algorithms</li>
  59. <li>Optional simulation of decoherence</li>
  60. <li>Optimized for maximally entangled states</li>
  61. <li>Accelerated with GPUs, FPGAs and other OpenCL devices</li>
  62. <li>Example implementations of Grover, Deutsch-Jozsa, Bernstein-Vazirani and Shors algorithm</li>
  63. <li>Implements Hadamard, Pauli and phase gates, with support for arbitrary gates</li>
  64. <li>Support for arbitrary controlled gates</li>
  65. </ul>
  66. </div><h2 id='reexports' class='section-header'><a href="#reexports">Re-exports</a></h2>
  67. <table><tr><td><code>pub use gates::<a class="struct" href="../qcgpu/gates/struct.Gate.html" title="struct qcgpu::gates::Gate">Gate</a>;</code></td></tr></table><h2 id='modules' class='section-header'><a href="#modules">Modules</a></h2>
  68. <table>
  69. <tr class=' module-item'>
  70. <td><a class="mod" href="gates/index.html"
  71. title='mod qcgpu::gates'>gates</a></td>
  72. <td class='docblock-short'>
  73. <p>Gates and Gate Generation</p>
  74. </td>
  75. </tr></table><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
  76. <table>
  77. <tr class=' module-item'>
  78. <td><a class="struct" href="struct.State.html"
  79. title='struct qcgpu::State'>State</a></td>
  80. <td class='docblock-short'>
  81. <p>Representation of a quantum register</p>
  82. </td>
  83. </tr></table><h2 id='functions' class='section-header'><a href="#functions">Functions</a></h2>
  84. <table>
  85. <tr class=' module-item'>
  86. <td><a class="fn" href="fn.gcd.html"
  87. title='fn qcgpu::gcd'>gcd</a></td>
  88. <td class='docblock-short'>
  89. <p>Calculate the greatest common divisor (Euclid's algorithm)</p>
  90. </td>
  91. </tr>
  92. <tr class=' module-item'>
  93. <td><a class="fn" href="fn.get_width.html"
  94. title='fn qcgpu::get_width'>get_width</a></td>
  95. <td class='docblock-short'>
  96. <p>Get the number of qubits needed to represent a number.</p>
  97. </td>
  98. </tr></table></section>
  99. <section id='search' class="content hidden"></section>
  100. <section class="footer"></section>
  101. <aside id="help" class="hidden">
  102. <div>
  103. <h1 class="hidden">Help</h1>
  104. <div class="shortcuts">
  105. <h2>Keyboard Shortcuts</h2>
  106. <dl>
  107. <dt><kbd>?</kbd></dt>
  108. <dd>Show this help dialog</dd>
  109. <dt><kbd>S</kbd></dt>
  110. <dd>Focus the search field</dd>
  111. <dt><kbd>↑</kbd></dt>
  112. <dd>Move up in search results</dd>
  113. <dt><kbd>↓</kbd></dt>
  114. <dd>Move down in search results</dd>
  115. <dt><kbd>↹</kbd></dt>
  116. <dd>Switch tab</dd>
  117. <dt><kbd>&#9166;</kbd></dt>
  118. <dd>Go to active search result</dd>
  119. <dt><kbd>+</kbd></dt>
  120. <dd>Expand all sections</dd>
  121. <dt><kbd>-</kbd></dt>
  122. <dd>Collapse all sections</dd>
  123. </dl>
  124. </div>
  125. <div class="infos">
  126. <h2>Search Tricks</h2>
  127. <p>
  128. Prefix searches with a type followed by a colon (e.g.
  129. <code>fn:</code>) to restrict the search to a given type.
  130. </p>
  131. <p>
  132. Accepted types are: <code>fn</code>, <code>mod</code>,
  133. <code>struct</code>, <code>enum</code>,
  134. <code>trait</code>, <code>type</code>, <code>macro</code>,
  135. and <code>const</code>.
  136. </p>
  137. <p>
  138. Search functions by type signature (e.g.
  139. <code>vec -> usize</code> or <code>* -> vec</code>)
  140. </p>
  141. </div>
  142. </div>
  143. </aside>
  144. <script>
  145. window.rootPath = "../";
  146. window.currentCrate = "qcgpu";
  147. </script>
  148. <script src="../main.js"></script>
  149. <script defer src="../search-index.js"></script>
  150. </body>
  151. </html>