This commit is contained in:
2020-01-23 23:13:36 -08:00
parent dcc0df955e
commit 2bc9ebdc6b
31829 changed files with 1229378 additions and 17 deletions

View File

@@ -0,0 +1,29 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `linear` mod in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, linear"><title>alga::linear - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module linear</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#traits">Traits</a></li></ul></div><p class='location'><a href='../index.html'>alga</a></p><script>window.sidebarCurrent = {name: 'linear', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/mod.rs.html#1-16' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>alga</a>::<wbr><a class="mod" href=''>linear</a></span></h1><div class='docblock'><p>Traits dedicated to linear algebra.</p>
</div><h2 id='traits' class='section-header'><a href="#traits">Traits</a></h2>
<table><tr class='module-item'><td><a class="trait" href="trait.AffineSpace.html" title='alga::linear::AffineSpace trait'>AffineSpace</a></td><td class='docblock-short'><p>A set points associated with a vector space and a transitive and free additive group action
(the translation).</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.AffineTransformation.html" title='alga::linear::AffineTransformation trait'>AffineTransformation</a></td><td class='docblock-short'><p>The group of affine transformations. They are decomposable into a rotation, a non-uniform
scaling, a second rotation, and a translation (applied in that order).</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.DirectIsometry.html" title='alga::linear::DirectIsometry trait'>DirectIsometry</a></td><td class='docblock-short'><p>Subgroups of the orientation-preserving isometry group <code>SE(n)</code>, i.e., rotations and translations.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.EuclideanSpace.html" title='alga::linear::EuclideanSpace trait'>EuclideanSpace</a></td><td class='docblock-short'><p>The finite-dimensional affine space based on the field of reals.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.FiniteDimInnerSpace.html" title='alga::linear::FiniteDimInnerSpace trait'>FiniteDimInnerSpace</a></td><td class='docblock-short'><p>A finite-dimensional vector space equipped with an inner product that must coincide
with the dot product.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.FiniteDimVectorSpace.html" title='alga::linear::FiniteDimVectorSpace trait'>FiniteDimVectorSpace</a></td><td class='docblock-short'><p>A finite-dimensional vector space.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.InnerSpace.html" title='alga::linear::InnerSpace trait'>InnerSpace</a></td><td class='docblock-short'><p>A vector space equipped with an inner product.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.InversibleSquareMatrix.html" title='alga::linear::InversibleSquareMatrix trait'>InversibleSquareMatrix</a></td><td class='docblock-short'><p>The group of inversible matrix. Commonly known as the General Linear group <code>GL(n)</code> by
algebraists.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Isometry.html" title='alga::linear::Isometry trait'>Isometry</a></td><td class='docblock-short'><p>Subgroups of the isometry group <code>E(n)</code>, i.e., rotations, reflexions, and translations.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Matrix.html" title='alga::linear::Matrix trait'>Matrix</a></td><td class='docblock-short'><p>The space of all matrices.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.MatrixMut.html" title='alga::linear::MatrixMut trait'>MatrixMut</a></td><td class='docblock-short'><p>The space of all matrices that are stable under modifications of its components, rows and columns.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.NormedSpace.html" title='alga::linear::NormedSpace trait'>NormedSpace</a></td><td class='docblock-short'><p>A normed vector space.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.OrthogonalTransformation.html" title='alga::linear::OrthogonalTransformation trait'>OrthogonalTransformation</a></td><td class='docblock-short'><p>Subgroups of the n-dimensional rotations and scaling <code>O(n)</code>.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.ProjectiveTransformation.html" title='alga::linear::ProjectiveTransformation trait'>ProjectiveTransformation</a></td><td class='docblock-short'><p>The most general form of invertible transformations on an euclidean space.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Rotation.html" title='alga::linear::Rotation trait'>Rotation</a></td><td class='docblock-short'><p>Subgroups of the n-dimensional rotation group <code>SO(n)</code>.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Scaling.html" title='alga::linear::Scaling trait'>Scaling</a></td><td class='docblock-short'><p>Subgroups of the (signed) uniform scaling group.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Similarity.html" title='alga::linear::Similarity trait'>Similarity</a></td><td class='docblock-short'><p>Subgroups of the similarity group <code>S(n)</code>, i.e., rotations, translations, and (signed) uniform scaling.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.SquareMatrix.html" title='alga::linear::SquareMatrix trait'>SquareMatrix</a></td><td class='docblock-short'><p>The monoid of all square matrices, including non-inversible ones.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.SquareMatrixMut.html" title='alga::linear::SquareMatrixMut trait'>SquareMatrixMut</a></td><td class='docblock-short'><p>The monoid of all mutable square matrices that are stable under modification of its diagonal.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Transformation.html" title='alga::linear::Transformation trait'>Transformation</a></td><td class='docblock-short'><p>A general transformation acting on an euclidean space. It may not be inversible.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.Translation.html" title='alga::linear::Translation trait'>Translation</a></td><td class='docblock-short'><p>Subgroups of the n-dimensional translation group <code>T(n)</code>.</p>
</td></tr><tr class='module-item'><td><a class="trait" href="trait.VectorSpace.html" title='alga::linear::VectorSpace trait'>VectorSpace</a></td><td class='docblock-short'><p>A vector space has a module structure over a field instead of a ring.</p>
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.InversibleSquareMatrix.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.InversibleSquareMatrix.html">../../../alga/linear/trait.InversibleSquareMatrix.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.InversibleSquareMatrix.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Matrix.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Matrix.html">../../../alga/linear/trait.Matrix.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Matrix.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.MatrixMut.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.MatrixMut.html">../../../alga/linear/trait.MatrixMut.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.MatrixMut.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.SquareMatrix.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.SquareMatrix.html">../../../alga/linear/trait.SquareMatrix.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.SquareMatrix.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.SquareMatrixMut.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.SquareMatrixMut.html">../../../alga/linear/trait.SquareMatrixMut.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.SquareMatrixMut.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1 @@
initSidebarItems({"trait":[["AffineSpace","A set points associated with a vector space and a transitive and free additive group action (the translation)."],["AffineTransformation","The group of affine transformations. They are decomposable into a rotation, a non-uniform scaling, a second rotation, and a translation (applied in that order)."],["DirectIsometry","Subgroups of the orientation-preserving isometry group `SE(n)`, i.e., rotations and translations."],["EuclideanSpace","The finite-dimensional affine space based on the field of reals."],["FiniteDimInnerSpace","A finite-dimensional vector space equipped with an inner product that must coincide with the dot product."],["FiniteDimVectorSpace","A finite-dimensional vector space."],["InnerSpace","A vector space equipped with an inner product."],["InversibleSquareMatrix","The group of inversible matrix. Commonly known as the General Linear group `GL(n)` by algebraists."],["Isometry","Subgroups of the isometry group `E(n)`, i.e., rotations, reflexions, and translations."],["Matrix","The space of all matrices."],["MatrixMut","The space of all matrices that are stable under modifications of its components, rows and columns."],["NormedSpace","A normed vector space."],["OrthogonalTransformation","Subgroups of the n-dimensional rotations and scaling `O(n)`."],["ProjectiveTransformation","The most general form of invertible transformations on an euclidean space."],["Rotation","Subgroups of the n-dimensional rotation group `SO(n)`."],["Scaling","Subgroups of the (signed) uniform scaling group."],["Similarity","Subgroups of the similarity group `S(n)`, i.e., rotations, translations, and (signed) uniform scaling."],["SquareMatrix","The monoid of all square matrices, including non-inversible ones."],["SquareMatrixMut","The monoid of all mutable square matrices that are stable under modification of its diagonal."],["Transformation","A general transformation acting on an euclidean space. It may not be inversible."],["Translation","Subgroups of the n-dimensional translation group `T(n)`."],["VectorSpace","A vector space has a module structure over a field instead of a ring."]]});

View File

@@ -0,0 +1,17 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `AffineSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, AffineSpace"><title>alga::linear::AffineSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait AffineSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.Translation">Translation</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.subtract">subtract</a><a href="#method.translate_by">translate_by</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'AffineSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#130-153' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>AffineSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait AffineSpace: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Self, Output = Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a>&gt; + <a class="trait" href="../../alga/general/trait.ClosedAdd.html" title="trait alga::general::ClosedAdd">ClosedAdd</a>&lt;Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a>&gt; {
type <a href='#associatedtype.Translation' class="type">Translation</a>: <a class="trait" href="../../alga/linear/trait.VectorSpace.html" title="trait alga::linear::VectorSpace">VectorSpace</a>;
fn <a href='#method.translate_by' class='fnname'>translate_by</a>(&amp;self, t: &amp;Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a>) -&gt; Self { ... }
<div class='item-spacer'></div> fn <a href='#method.subtract' class='fnname'>subtract</a>(&amp;self, right: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a> { ... }
}</pre></div><div class='docblock'><p>A set points associated with a vector space and a transitive and free additive group action
(the translation).</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.Translation' class='method'><code id='Translation.t'>type <a href='#associatedtype.Translation' class="type">Translation</a>: <a class="trait" href="../../alga/linear/trait.VectorSpace.html" title="trait alga::linear::VectorSpace">VectorSpace</a></code></h3><div class='docblock'><p>The associated vector space.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.translate_by' class='method'><code id='translate_by.v'>fn <a href='#method.translate_by' class='fnname'>translate_by</a>(&amp;self, t: &amp;Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a>) -&gt; Self</code></h3><div class='docblock'><p>Same as <code>*self + *t</code>. Applies the additive group action of this affine space's associated
vector space on <code>self</code>.</p>
</div><h3 id='method.subtract' class='method'><code id='subtract.v'>fn <a href='#method.subtract' class='fnname'>subtract</a>(&amp;self, right: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.AffineSpace.html#associatedtype.Translation" title="type alga::linear::AffineSpace::Translation">Translation</a></code></h3><div class='docblock'><p>Same as <code>*self - *other</code>. Returns the unique element <code>v</code> of the associated vector space
such that <code>self = right + v</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.AffineSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,5 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `DirectIsometry` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, DirectIsometry"><title>alga::linear::DirectIsometry - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait DirectIsometry</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'DirectIsometry', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#190' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>DirectIsometry</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait DirectIsometry&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.Isometry.html" title="trait alga::linear::Isometry">Isometry</a>&lt;E&gt; { }</pre></div><div class='docblock'><p>Subgroups of the orientation-preserving isometry group <code>SE(n)</code>, i.e., rotations and translations.</p>
</div>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-DirectIsometry%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; DirectIsometry&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-DirectIsometry%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#99' title='goto source code'>[src]</a></h3><div class='impl-items'></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.DirectIsometry.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,29 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `EuclideanSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, EuclideanSpace"><title>alga::linear::EuclideanSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait EuclideanSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.Coordinates">Coordinates</a><a href="#associatedtype.RealField">RealField</a></div><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.origin">origin</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.coordinates">coordinates</a><a href="#method.distance">distance</a><a href="#method.distance_squared">distance_squared</a><a href="#method.from_coordinates">from_coordinates</a><a href="#method.scale_by">scale_by</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'EuclideanSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#156-224' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>EuclideanSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait EuclideanSpace: <a class="trait" href="../../alga/linear/trait.AffineSpace.html" title="trait alga::linear::AffineSpace">AffineSpace</a>&lt;Translation = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="../../alga/general/trait.ClosedMul.html" title="trait alga::general::ClosedMul">ClosedMul</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="../../alga/general/trait.ClosedDiv.html" title="trait alga::general::ClosedDiv">ClosedDiv</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html" title="trait core::ops::arith::Neg">Neg</a>&lt;Output = Self&gt; {
type <a href='#associatedtype.Coordinates' class="type">Coordinates</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimInnerSpace.html" title="trait alga::linear::FiniteDimInnerSpace">FiniteDimInnerSpace</a>&lt;RealField = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, ComplexField = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html" title="trait core::ops::arith::Mul">Mul</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.MulAssign.html" title="trait core::ops::arith::MulAssign">MulAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.DivAssign.html" title="trait core::ops::arith::DivAssign">DivAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html" title="trait core::ops::arith::Neg">Neg</a>&lt;Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt;;
type <a href='#associatedtype.RealField' class="type">RealField</a>: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a>;
fn <a href='#tymethod.origin' class='fnname'>origin</a>() -&gt; Self;
fn <a href='#method.scale_by' class='fnname'>scale_by</a>(&amp;self, s: Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; Self { ... }
<div class='item-spacer'></div> fn <a href='#method.coordinates' class='fnname'>coordinates</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a> { ... }
<div class='item-spacer'></div> fn <a href='#method.from_coordinates' class='fnname'>from_coordinates</a>(coords: Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; Self { ... }
<div class='item-spacer'></div> fn <a href='#method.distance_squared' class='fnname'>distance_squared</a>(&amp;self, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a> { ... }
<div class='item-spacer'></div> fn <a href='#method.distance' class='fnname'>distance</a>(&amp;self, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a> { ... }
}</pre></div><div class='docblock'><p>The finite-dimensional affine space based on the field of reals.</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.Coordinates' class='method'><code id='Coordinates.t'>type <a href='#associatedtype.Coordinates' class="type">Coordinates</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimInnerSpace.html" title="trait alga::linear::FiniteDimInnerSpace">FiniteDimInnerSpace</a>&lt;RealField = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, ComplexField = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html" title="trait core::ops::arith::Mul">Mul</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.MulAssign.html" title="trait core::ops::arith::MulAssign">MulAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>, Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.DivAssign.html" title="trait core::ops::arith::DivAssign">DivAssign</a>&lt;Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html" title="trait core::ops::arith::Neg">Neg</a>&lt;Output = Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>&gt;</code></h3><div class='docblock'><p>The underlying finite vector space.</p>
</div><h3 id='associatedtype.RealField' class='method'><code id='RealField.t'>type <a href='#associatedtype.RealField' class="type">RealField</a>: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a></code></h3><div class='docblock'><p>The underlying reals.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.origin' class='method'><code id='origin.v'>fn <a href='#tymethod.origin' class='fnname'>origin</a>() -&gt; Self</code></h3><div class='docblock'><p>The preferred origin of this euclidean space.</p>
<p>Theoretically, an euclidean space has no clearly defined origin. Though it is almost always
useful to have some reference point to express all the others as translations of it.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.scale_by' class='method'><code id='scale_by.v'>fn <a href='#method.scale_by' class='fnname'>scale_by</a>(&amp;self, s: Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; Self</code></h3><div class='docblock'><p>Multiplies the distance of this point to <code>Self::origin()</code> by <code>s</code>.</p>
<p>Same as self * s.</p>
</div><h3 id='method.coordinates' class='method'><code id='coordinates.v'>fn <a href='#method.coordinates' class='fnname'>coordinates</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code></h3><div class='docblock'><p>The coordinates of this point, i.e., the translation from the origin.</p>
</div><h3 id='method.from_coordinates' class='method'><code id='from_coordinates.v'>fn <a href='#method.from_coordinates' class='fnname'>from_coordinates</a>(coords: Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; Self</code></h3><div class='docblock'><p>Builds a point from its coordinates relative to the origin.</p>
</div><h3 id='method.distance_squared' class='method'><code id='distance_squared.v'>fn <a href='#method.distance_squared' class='fnname'>distance_squared</a>(&amp;self, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a></code></h3><div class='docblock'><p>The distance between two points.</p>
</div><h3 id='method.distance' class='method'><code id='distance.v'>fn <a href='#method.distance' class='fnname'>distance</a>(&amp;self, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a></code></h3><div class='docblock'><p>The distance between two points.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.EuclideanSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,16 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `FiniteDimInnerSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, FiniteDimInnerSpace"><title>alga::linear::FiniteDimInnerSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait FiniteDimInnerSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.orthonormal_subspace_basis">orthonormal_subspace_basis</a><a href="#tymethod.orthonormalize">orthonormalize</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'FiniteDimInnerSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#113-126' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>FiniteDimInnerSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait FiniteDimInnerSpace: <a class="trait" href="../../alga/linear/trait.InnerSpace.html" title="trait alga::linear::InnerSpace">InnerSpace</a> + <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.ComplexField" title="type alga::linear::NormedSpace::ComplexField">ComplexField</a>&gt; {
fn <a href='#tymethod.orthonormalize' class='fnname'>orthonormalize</a>(vs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [Self]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.orthonormal_subspace_basis' class='fnname'>orthonormal_subspace_basis</a>&lt;F:&nbsp;<a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;(vs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[Self]</a>, f: F);
}</pre></div><div class='docblock'><p>A finite-dimensional vector space equipped with an inner product that must coincide
with the dot product.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.orthonormalize' class='method'><code id='orthonormalize.v'>fn <a href='#tymethod.orthonormalize' class='fnname'>orthonormalize</a>(vs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;mut [Self]</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h3><div class='docblock'><p>Orthonormalizes the given family of vectors. The largest free family of vectors is moved at
the beginning of the array and its size is returned. Vectors at an indices larger or equal to
this length can be modified to an arbitrary value.</p>
</div><h3 id='tymethod.orthonormal_subspace_basis' class='method'><code id='orthonormal_subspace_basis.v'>fn <a href='#tymethod.orthonormal_subspace_basis' class='fnname'>orthonormal_subspace_basis</a>&lt;F:&nbsp;<a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;(vs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&amp;[Self]</a>, f: F)</code></h3><div class='docblock'><p>Applies the given closure to each element of the orthonormal basis of the subspace
orthogonal to free family of vectors <code>vs</code>. If <code>vs</code> is not a free family, the result is
unspecified.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.FiniteDimInnerSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,22 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `FiniteDimVectorSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, FiniteDimVectorSpace"><title>alga::linear::FiniteDimVectorSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait FiniteDimVectorSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.canonical_basis_element">canonical_basis_element</a><a href="#tymethod.component_unchecked">component_unchecked</a><a href="#tymethod.component_unchecked_mut">component_unchecked_mut</a><a href="#tymethod.dimension">dimension</a><a href="#tymethod.dot">dot</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.canonical_basis">canonical_basis</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'FiniteDimVectorSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#79-109' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>FiniteDimVectorSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait FiniteDimVectorSpace: <a class="trait" href="../../alga/linear/trait.VectorSpace.html" title="trait alga::linear::VectorSpace">VectorSpace</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, Output = Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>&gt; + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, Output = Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>&gt; {
fn <a href='#tymethod.dimension' class='fnname'>dimension</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.canonical_basis_element' class='fnname'>canonical_basis_element</a>(i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self;
<div class='item-spacer'></div> fn <a href='#tymethod.dot' class='fnname'>dot</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>;
<div class='item-spacer'></div> unsafe fn <a href='#tymethod.component_unchecked' class='fnname'>component_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>;
<div class='item-spacer'></div> unsafe fn <a href='#tymethod.component_unchecked_mut' class='fnname'>component_unchecked_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>;
fn <a href='#method.canonical_basis' class='fnname'>canonical_basis</a>&lt;F:&nbsp;<a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;(f: F) { ... }
}</pre></div><div class='docblock'><p>A finite-dimensional vector space.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.dimension' class='method'><code id='dimension.v'>fn <a href='#tymethod.dimension' class='fnname'>dimension</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h3><div class='docblock'><p>The vector space dimension.</p>
</div><h3 id='tymethod.canonical_basis_element' class='method'><code id='canonical_basis_element.v'>fn <a href='#tymethod.canonical_basis_element' class='fnname'>canonical_basis_element</a>(i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self</code></h3><div class='docblock'><p>The i-the canonical basis element.</p>
</div><h3 id='tymethod.dot' class='method'><code id='dot.v'>fn <a href='#tymethod.dot' class='fnname'>dot</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a></code></h3><div class='docblock'><p>The dot product between two vectors.</p>
</div><h3 id='tymethod.component_unchecked' class='method'><code id='component_unchecked.v'>unsafe fn <a href='#tymethod.component_unchecked' class='fnname'>component_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a></code></h3><div class='docblock'><p>Same as <code>&amp;self[i]</code> but without bound-checking.</p>
</div><h3 id='tymethod.component_unchecked_mut' class='method'><code id='component_unchecked_mut.v'>unsafe fn <a href='#tymethod.component_unchecked_mut' class='fnname'>component_unchecked_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; &amp;mut Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a></code></h3><div class='docblock'><p>Same as <code>&amp;mut self[i]</code> but without bound-checking.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.canonical_basis' class='method'><code id='canonical_basis.v'>fn <a href='#method.canonical_basis' class='fnname'>canonical_basis</a>&lt;F:&nbsp;<a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>&gt;(f: F)</code></h3><div class='docblock'><p>Applies the given closule to each element of this vector space's canonical basis. Stops if
<code>f</code> returns <code>false</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.FiniteDimVectorSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,15 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `InnerSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, InnerSpace"><title>alga::linear::InnerSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait InnerSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.inner_product">inner_product</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.angle">angle</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'InnerSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#51-76' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>InnerSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait InnerSpace: <a class="trait" href="../../alga/linear/trait.NormedSpace.html" title="trait alga::linear::NormedSpace">NormedSpace</a> {
fn <a href='#tymethod.inner_product' class='fnname'>inner_product</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.ComplexField" title="type alga::linear::NormedSpace::ComplexField">ComplexField</a>;
fn <a href='#method.angle' class='fnname'>angle</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a> { ... }
}</pre></div><div class='docblock'><p>A vector space equipped with an inner product.</p>
<p>It must be a normed space as well and the norm must agree with the inner product.
The inner product must be symmetric, linear in its first argument, and positive definite.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.inner_product' class='method'><code id='inner_product.v'>fn <a href='#tymethod.inner_product' class='fnname'>inner_product</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.ComplexField" title="type alga::linear::NormedSpace::ComplexField">ComplexField</a></code></h3><div class='docblock'><p>Computes the inner product of <code>self</code> with <code>other</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.angle' class='method'><code id='angle.v'>fn <a href='#method.angle' class='fnname'>angle</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code></h3><div class='docblock'><p>Measures the angle between two vectors.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.InnerSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,6 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `InversibleSquareMatrix` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, InversibleSquareMatrix"><title>alga::linear::InversibleSquareMatrix - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait InversibleSquareMatrix</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'InversibleSquareMatrix', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/matrix.rs.html#150' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>InversibleSquareMatrix</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait InversibleSquareMatrix: <a class="trait" href="../../alga/linear/trait.SquareMatrix.html" title="trait alga::linear::SquareMatrix">SquareMatrix</a> + <a class="trait" href="../../alga/general/trait.MultiplicativeGroup.html" title="trait alga::general::MultiplicativeGroup">MultiplicativeGroup</a> { }</pre></div><div class='docblock'><p>The group of inversible matrix. Commonly known as the General Linear group <code>GL(n)</code> by
algebraists.</p>
</div>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.InversibleSquareMatrix.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,5 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Isometry` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Isometry"><title>alga::linear::Isometry - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Isometry</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Isometry', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#187' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Isometry</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Isometry&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.Similarity.html" title="trait alga::linear::Similarity">Similarity</a>&lt;E, Scaling = <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a>&gt; { }</pre></div><div class='docblock'><p>Subgroups of the isometry group <code>E(n)</code>, i.e., rotations, reflexions, and translations.</p>
</div>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Isometry%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; Isometry&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-Isometry%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#98' title='goto source code'>[src]</a></h3><div class='impl-items'></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Isometry.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,32 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Matrix` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Matrix"><title>alga::linear::Matrix - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Matrix</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.Field">Field</a><a href="#associatedtype.Row">Row</a><a href="#associatedtype.Column">Column</a><a href="#associatedtype.Transpose">Transpose</a></div><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.column">column</a><a href="#tymethod.get_unchecked">get_unchecked</a><a href="#tymethod.ncolumns">ncolumns</a><a href="#tymethod.nrows">nrows</a><a href="#tymethod.row">row</a><a href="#tymethod.transpose">transpose</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.get">get</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Matrix', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/matrix.rs.html#7-49' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Matrix</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Matrix: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html" title="trait core::ops::arith::Mul">Mul</a>&lt;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>, Output = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>&gt; {
type <a href='#associatedtype.Field' class="type">Field</a>: <a class="trait" href="../../alga/general/trait.Field.html" title="trait alga::general::Field">Field</a>;
type <a href='#associatedtype.Row' class="type">Row</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;;
type <a href='#associatedtype.Column' class="type">Column</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;;
type <a href='#associatedtype.Transpose' class="type">Transpose</a>: <a class="trait" href="../../alga/linear/trait.Matrix.html" title="trait alga::linear::Matrix">Matrix</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>, Row = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>, Column = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>&gt;;
fn <a href='#tymethod.nrows' class='fnname'>nrows</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.ncolumns' class='fnname'>ncolumns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.row' class='fnname'>row</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.column' class='fnname'>column</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>;
<div class='item-spacer'></div> unsafe fn <a href='#tymethod.get_unchecked' class='fnname'>get_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.transpose' class='fnname'>transpose</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Transpose" title="type alga::linear::Matrix::Transpose">Transpose</a>;
fn <a href='#method.get' class='fnname'>get</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a> { ... }
}</pre></div><div class='docblock'><p>The space of all matrices.</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.Field' class='method'><code id='Field.t'>type <a href='#associatedtype.Field' class="type">Field</a>: <a class="trait" href="../../alga/general/trait.Field.html" title="trait alga::general::Field">Field</a></code></h3><div class='docblock'><p>The underlying field.</p>
</div><h3 id='associatedtype.Row' class='method'><code id='Row.t'>type <a href='#associatedtype.Row' class="type">Row</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;</code></h3><div class='docblock'><p>The type of rows of this matrix.</p>
</div><h3 id='associatedtype.Column' class='method'><code id='Column.t'>type <a href='#associatedtype.Column' class="type">Column</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;</code></h3><div class='docblock'><p>The type of columns of this matrix.</p>
</div><h3 id='associatedtype.Transpose' class='method'><code id='Transpose.t'>type <a href='#associatedtype.Transpose' class="type">Transpose</a>: <a class="trait" href="../../alga/linear/trait.Matrix.html" title="trait alga::linear::Matrix">Matrix</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>, Row = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>, Column = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>&gt;</code></h3><div class='docblock'><p>The type of the transposed matrix.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.nrows' class='method'><code id='nrows.v'>fn <a href='#tymethod.nrows' class='fnname'>nrows</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h3><div class='docblock'><p>The number of rows of this matrix.</p>
</div><h3 id='tymethod.ncolumns' class='method'><code id='ncolumns.v'>fn <a href='#tymethod.ncolumns' class='fnname'>ncolumns</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h3><div class='docblock'><p>The number of columns of this matrix.</p>
</div><h3 id='tymethod.row' class='method'><code id='row.v'>fn <a href='#tymethod.row' class='fnname'>row</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a></code></h3><div class='docblock'><p>The i-th row of this matrix.</p>
</div><h3 id='tymethod.column' class='method'><code id='column.v'>fn <a href='#tymethod.column' class='fnname'>column</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a></code></h3><div class='docblock'><p>The i-th column of this matrix.</p>
</div><h3 id='tymethod.get_unchecked' class='method'><code id='get_unchecked.v'>unsafe fn <a href='#tymethod.get_unchecked' class='fnname'>get_unchecked</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a></code></h3><div class='docblock'><p>Gets the component at row <code>i</code> and column <code>j</code> of this matrix without bound checking.</p>
</div><h3 id='tymethod.transpose' class='method'><code id='transpose.v'>fn <a href='#tymethod.transpose' class='fnname'>transpose</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Transpose" title="type alga::linear::Matrix::Transpose">Transpose</a></code></h3><div class='docblock'><p>Transposes this matrix.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.get' class='method'><code id='get.v'>fn <a href='#method.get' class='fnname'>get</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a></code></h3><div class='docblock'><p>Gets the component at row <code>i</code> and column <code>j</code> of this matrix.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Matrix.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,21 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `MatrixMut` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, MatrixMut"><title>alga::linear::MatrixMut - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait MatrixMut</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.set_column_mut">set_column_mut</a><a href="#tymethod.set_row_mut">set_row_mut</a><a href="#tymethod.set_unchecked">set_unchecked</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.set">set</a><a href="#method.set_column">set_column</a><a href="#method.set_row">set_row</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'MatrixMut', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/matrix.rs.html#52-87' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>MatrixMut</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait MatrixMut: <a class="trait" href="../../alga/linear/trait.Matrix.html" title="trait alga::linear::Matrix">Matrix</a> {
fn <a href='#tymethod.set_row_mut' class='fnname'>set_row_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, row: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>);
<div class='item-spacer'></div> fn <a href='#tymethod.set_column_mut' class='fnname'>set_column_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, col: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>);
<div class='item-spacer'></div> unsafe fn <a href='#tymethod.set_unchecked' class='fnname'>set_unchecked</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, val: Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>);
fn <a href='#method.set_row' class='fnname'>set_row</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, row: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>) -&gt; Self { ... }
<div class='item-spacer'></div> fn <a href='#method.set_column' class='fnname'>set_column</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, col: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>) -&gt; Self { ... }
<div class='item-spacer'></div> fn <a href='#method.set' class='fnname'>set</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, val: Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>) { ... }
}</pre></div><div class='docblock'><p>The space of all matrices that are stable under modifications of its components, rows and columns.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.set_row_mut' class='method'><code id='set_row_mut.v'>fn <a href='#tymethod.set_row_mut' class='fnname'>set_row_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, row: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>)</code></h3><div class='docblock'><p>In-place sets the i-th row of this matrix.</p>
</div><h3 id='tymethod.set_column_mut' class='method'><code id='set_column_mut.v'>fn <a href='#tymethod.set_column_mut' class='fnname'>set_column_mut</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, col: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>)</code></h3><div class='docblock'><p>In-place sets the i-th col of this matrix.</p>
</div><h3 id='tymethod.set_unchecked' class='method'><code id='set_unchecked.v'>unsafe fn <a href='#tymethod.set_unchecked' class='fnname'>set_unchecked</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, val: Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>)</code></h3><div class='docblock'><p>Sets the component at row <code>i</code> and column <code>j</code> of this matrix without bound checking.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.set_row' class='method'><code id='set_row.v'>fn <a href='#method.set_row' class='fnname'>set_row</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, row: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Row" title="type alga::linear::Matrix::Row">Row</a>) -&gt; Self</code></h3><div class='docblock'><p>Sets the i-th row of this matrix.</p>
</div><h3 id='method.set_column' class='method'><code id='set_column.v'>fn <a href='#method.set_column' class='fnname'>set_column</a>(&amp;self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, col: &amp;Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Column" title="type alga::linear::Matrix::Column">Column</a>) -&gt; Self</code></h3><div class='docblock'><p>Sets the i-th col of this matrix.</p>
</div><h3 id='method.set' class='method'><code id='set.v'>fn <a href='#method.set' class='fnname'>set</a>(&amp;mut self, i: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, j: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, val: Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>)</code></h3><div class='docblock'><p>Sets the component at row <code>i</code> and column <code>j</code> of this matrix.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.MatrixMut.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,26 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `NormedSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, NormedSpace"><title>alga::linear::NormedSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait NormedSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.RealField">RealField</a><a href="#associatedtype.ComplexField">ComplexField</a></div><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.norm">norm</a><a href="#tymethod.norm_squared">norm_squared</a><a href="#tymethod.normalize">normalize</a><a href="#tymethod.normalize_mut">normalize_mut</a><a href="#tymethod.try_normalize">try_normalize</a><a href="#tymethod.try_normalize_mut">try_normalize_mut</a></div><a class="sidebar-title" href="#foreign-impls">Implementations on Foreign Types</a><div class="sidebar-links"><a href="#impl-NormedSpace-for-Complex%3CN%3E">Complex&lt;N&gt;</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'NormedSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#20-45' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>NormedSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait NormedSpace: <a class="trait" href="../../alga/linear/trait.VectorSpace.html" title="trait alga::linear::VectorSpace">VectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.ComplexField" title="type alga::linear::NormedSpace::ComplexField">ComplexField</a>&gt; {
type <a href='#associatedtype.RealField' class="type">RealField</a>: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a>;
type <a href='#associatedtype.ComplexField' class="type">ComplexField</a>: <a class="trait" href="../../alga/general/trait.ComplexField.html" title="trait alga::general::ComplexField">ComplexField</a>&lt;RealField = Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>&gt;;
fn <a href='#tymethod.norm_squared' class='fnname'>norm_squared</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.norm' class='fnname'>norm</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.normalize' class='fnname'>normalize</a>(&amp;self) -&gt; Self;
<div class='item-spacer'></div> fn <a href='#tymethod.normalize_mut' class='fnname'>normalize_mut</a>(&amp;mut self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.try_normalize' class='fnname'>try_normalize</a>(&amp;self, eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
<div class='item-spacer'></div> fn <a href='#tymethod.try_normalize_mut' class='fnname'>try_normalize_mut</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a><br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>&gt;;
}</pre></div><div class='docblock'><p>A normed vector space.</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.RealField' class='method'><code id='RealField.t'>type <a href='#associatedtype.RealField' class="type">RealField</a>: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a></code></h3><div class='docblock'><p>The result of the norm (not necessarily the same same as the field used by this vector space).</p>
</div><h3 id='associatedtype.ComplexField' class='method'><code id='ComplexField.t'>type <a href='#associatedtype.ComplexField' class="type">ComplexField</a>: <a class="trait" href="../../alga/general/trait.ComplexField.html" title="trait alga::general::ComplexField">ComplexField</a>&lt;RealField = Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>&gt;</code></h3><div class='docblock'><p>The field of this space must be this complex number.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.norm_squared' class='method'><code id='norm_squared.v'>fn <a href='#tymethod.norm_squared' class='fnname'>norm_squared</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code></h3><div class='docblock'><p>The squared norm of this vector.</p>
</div><h3 id='tymethod.norm' class='method'><code id='norm.v'>fn <a href='#tymethod.norm' class='fnname'>norm</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code></h3><div class='docblock'><p>The norm of this vector.</p>
</div><h3 id='tymethod.normalize' class='method'><code id='normalize.v'>fn <a href='#tymethod.normalize' class='fnname'>normalize</a>(&amp;self) -&gt; Self</code></h3><div class='docblock'><p>Returns a normalized version of this vector.</p>
</div><h3 id='tymethod.normalize_mut' class='method'><code id='normalize_mut.v'>fn <a href='#tymethod.normalize_mut' class='fnname'>normalize_mut</a>(&amp;mut self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code></h3><div class='docblock'><p>Normalizes this vector in-place and returns its norm.</p>
</div><h3 id='tymethod.try_normalize' class='method'><code id='try_normalize.v'>fn <a href='#tymethod.try_normalize' class='fnname'>try_normalize</a>(&amp;self, eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Returns a normalized version of this vector unless its norm as smaller or equal to <code>eps</code>.</p>
</div><h3 id='tymethod.try_normalize_mut' class='method'><code id='try_normalize_mut.v'>fn <a href='#tymethod.try_normalize_mut' class='fnname'>try_normalize_mut</a>(&amp;mut self, eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>&gt;</code></h3><div class='docblock'><p>Normalizes this vector in-place or does nothing if its norm is smaller or equal to <code>eps</code>.</p>
<p>If the normalization succeeded, returns the old normal of this vector.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='foreign-impls' class='small-section-header'>Implementations on Foreign Types<a href='#foreign-impls' class='anchor'></a></h2><h3 id='impl-NormedSpace-for-Complex%3CN%3E' class='impl'><code class='in-band'>impl&lt;N:&nbsp;<a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a>&gt; <a class="trait" href="../../alga/linear/trait.NormedSpace.html" title="trait alga::linear::NormedSpace">NormedSpace</a> for <a class="struct" href="../../num_complex/struct.Complex.html" title="struct num_complex::Complex">Complex</a>&lt;N&gt;</code><a href='#impl-NormedSpace-for-Complex%3CN%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/vector.rs.html#230-277' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.RealField-1' class="type"><code id='RealField.t-1'>type <a href='#associatedtype.RealField' class="type">RealField</a> = N</code></h4><h4 id='associatedtype.ComplexField-1' class="type"><code id='ComplexField.t-1'>type <a href='#associatedtype.ComplexField' class="type">ComplexField</a> = N</code></h4><h4 id='method.norm_squared' class="method hidden"><code id='norm_squared.v-1'>fn <a href='#method.norm_squared' class='fnname'>norm_squared</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code><a class='srclink' href='../../src/alga/linear/vector.rs.html#235-237' title='goto source code'>[src]</a></h4><h4 id='method.norm' class="method hidden"><code id='norm.v-1'>fn <a href='#method.norm' class='fnname'>norm</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code><a class='srclink' href='../../src/alga/linear/vector.rs.html#240-242' title='goto source code'>[src]</a></h4><h4 id='method.normalize' class="method hidden"><code id='normalize.v-1'>fn <a href='#method.normalize' class='fnname'>normalize</a>(&amp;self) -&gt; Self</code><a class='srclink' href='../../src/alga/linear/vector.rs.html#245-247' title='goto source code'>[src]</a></h4><h4 id='method.normalize_mut' class="method hidden"><code id='normalize_mut.v-1'>fn <a href='#method.normalize_mut' class='fnname'>normalize_mut</a>(&amp;mut self) -&gt; Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a></code><a class='srclink' href='../../src/alga/linear/vector.rs.html#250-254' title='goto source code'>[src]</a></h4><h4 id='method.try_normalize' class="method hidden"><code id='try_normalize.v-1'>fn <a href='#method.try_normalize' class='fnname'>try_normalize</a>(&amp;self, eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/vector.rs.html#257-264' title='goto source code'>[src]</a></h4><h4 id='method.try_normalize_mut' class="method hidden"><code id='try_normalize_mut.v-1'>fn <a href='#method.try_normalize_mut' class='fnname'>try_normalize_mut</a>(&amp;mut self, eps: Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self::<a class="type" href="../../alga/linear/trait.NormedSpace.html#associatedtype.RealField" title="type alga::linear::NormedSpace::RealField">RealField</a>&gt;</code><a class='srclink' href='../../src/alga/linear/vector.rs.html#267-276' title='goto source code'>[src]</a></h4></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.NormedSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,5 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `OrthogonalTransformation` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, OrthogonalTransformation"><title>alga::linear::OrthogonalTransformation - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait OrthogonalTransformation</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'OrthogonalTransformation', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#193' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>OrthogonalTransformation</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait OrthogonalTransformation&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.Isometry.html" title="trait alga::linear::Isometry">Isometry</a>&lt;E, Translation = <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a>&gt; { }</pre></div><div class='docblock'><p>Subgroups of the n-dimensional rotations and scaling <code>O(n)</code>.</p>
</div>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-OrthogonalTransformation%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; OrthogonalTransformation&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-OrthogonalTransformation%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#100' title='goto source code'>[src]</a></h3><div class='impl-items'></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.OrthogonalTransformation.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,13 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ProjectiveTransformation` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, ProjectiveTransformation"><title>alga::linear::ProjectiveTransformation - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait ProjectiveTransformation</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.inverse_transform_point">inverse_transform_point</a><a href="#tymethod.inverse_transform_vector">inverse_transform_vector</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'ProjectiveTransformation', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#22-33' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>ProjectiveTransformation</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait ProjectiveTransformation&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/general/trait.MultiplicativeGroup.html" title="trait alga::general::MultiplicativeGroup">MultiplicativeGroup</a> + <a class="trait" href="../../alga/linear/trait.Transformation.html" title="trait alga::linear::Transformation">Transformation</a>&lt;E&gt; {
fn <a href='#tymethod.inverse_transform_point' class='fnname'>inverse_transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E;
<div class='item-spacer'></div> fn <a href='#tymethod.inverse_transform_vector' class='fnname'>inverse_transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>;
}</pre></div><div class='docblock'><p>The most general form of invertible transformations on an euclidean space.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.inverse_transform_point' class='method'><code id='inverse_transform_point.v'>fn <a href='#tymethod.inverse_transform_point' class='fnname'>inverse_transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code></h3><div class='docblock'><p>Applies this group's two_sided_inverse action on a point from the euclidean space.</p>
</div><h3 id='tymethod.inverse_transform_vector' class='method'><code id='inverse_transform_vector.v'>fn <a href='#tymethod.inverse_transform_vector' class='fnname'>inverse_transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code></h3><div class='docblock'><p>Applies this group's two_sided_inverse action on a vector from the euclidean space.</p>
<p>If <code>v</code> is a vector and <code>a, b</code> two point such that <code>v = a - b</code>, the action <code></code> on a vector
is defined as <code>self ∘ v = (self × a) - (self × b)</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-ProjectiveTransformation%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; ProjectiveTransformation&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-ProjectiveTransformation%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#25-35' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.inverse_transform_point' class="method hidden"><code id='inverse_transform_point.v-1'>fn <a href='#method.inverse_transform_point' class='fnname'>inverse_transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code><a class='srclink' href='../../src/alga/linear/id.rs.html#27-29' title='goto source code'>[src]</a></h4><h4 id='method.inverse_transform_vector' class="method hidden"><code id='inverse_transform_vector.v-1'>fn <a href='#method.inverse_transform_vector' class='fnname'>inverse_transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code><a class='srclink' href='../../src/alga/linear/id.rs.html#32-34' title='goto source code'>[src]</a></h4></div><h3 id='impl-ProjectiveTransformation%3CE%3E-1' class='impl'><code class='in-band'>impl&lt;R, E&gt; ProjectiveTransformation&lt;E&gt; for R <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;R: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&lt;RealField = R&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>: <a class="trait" href="../../alga/general/trait.ClosedMul.html" title="trait alga::general::ClosedMul">ClosedMul</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedDiv.html" title="trait alga::general::ClosedDiv">ClosedDiv</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedNeg.html" title="trait alga::general::ClosedNeg">ClosedNeg</a>,&nbsp;</span></code><a href='#impl-ProjectiveTransformation%3CE%3E-1' class='anchor'></a><a class='srclink' href='../../src/alga/linear/transformation.rs.html#309-326' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.inverse_transform_point-1' class="method hidden"><code id='inverse_transform_point.v-2'>fn <a href='#method.inverse_transform_point-1' class='fnname'>inverse_transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#316-319' title='goto source code'>[src]</a></h4><h4 id='method.inverse_transform_vector-1' class="method hidden"><code id='inverse_transform_vector.v-2'>fn <a href='#method.inverse_transform_vector-1' class='fnname'>inverse_transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#322-325' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.ProjectiveTransformation.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,19 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Rotation` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Rotation"><title>alga::linear::Rotation - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Rotation</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.powf">powf</a><a href="#tymethod.rotation_between">rotation_between</a><a href="#tymethod.scaled_rotation_between">scaled_rotation_between</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Rotation', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#258-284' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Rotation</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Rotation&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.OrthogonalTransformation.html" title="trait alga::linear::OrthogonalTransformation">OrthogonalTransformation</a>&lt;E, Rotation = Self&gt; + <a class="trait" href="../../alga/linear/trait.DirectIsometry.html" title="trait alga::linear::DirectIsometry">DirectIsometry</a>&lt;E, Rotation = Self&gt; {
fn <a href='#tymethod.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
<div class='item-spacer'></div> fn <a href='#tymethod.rotation_between' class='fnname'>rotation_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
<div class='item-spacer'></div> fn <a href='#tymethod.scaled_rotation_between' class='fnname'>scaled_rotation_between</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a><br>&nbsp;&nbsp;&nbsp;&nbsp;) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
}</pre></div><div class='docblock'><p>Subgroups of the n-dimensional rotation group <code>SO(n)</code>.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.powf' class='method'><code id='powf.v'>fn <a href='#tymethod.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Raises this rotation to a power. If this is a simple rotation, the result must be
equivalent to multiplying the rotation angle by <code>n</code>.</p>
</div><h3 id='tymethod.rotation_between' class='method'><code id='rotation_between.v'>fn <a href='#tymethod.rotation_between' class='fnname'>rotation_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Computes a simple rotation that makes the angle between <code>a</code> and <code>b</code> equal to zero, i.e.,
<code>b.angle(a * delta_rotation(a, b)) = 0</code>. If <code>a</code> and <code>b</code> are collinear, the computed
rotation may not be unique. Returns <code>None</code> if no such simple rotation exists in the
subgroup represented by <code>Self</code>.</p>
</div><h3 id='tymethod.scaled_rotation_between' class='method'><code id='scaled_rotation_between.v'>fn <a href='#tymethod.scaled_rotation_between' class='fnname'>scaled_rotation_between</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;s: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Computes the rotation between <code>a</code> and <code>b</code> and raises it to the power <code>n</code>.</p>
<p>This is equivalent to calling <code>self.rotation_between(a, b)</code> followed by <code>.powf(n)</code> but will
usually be much more efficient.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Rotation%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; Rotation&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-Rotation%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#102-125' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.powf' class="method hidden"><code id='powf.v-1'>fn <a href='#method.powf' class='fnname'>powf</a>(&amp;self, _: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/id.rs.html#104-106' title='goto source code'>[src]</a></h4><h4 id='method.rotation_between' class="method hidden"><code id='rotation_between.v-1'>fn <a href='#method.rotation_between' class='fnname'>rotation_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/id.rs.html#109-115' title='goto source code'>[src]</a></h4><h4 id='method.scaled_rotation_between' class="method hidden"><code id='scaled_rotation_between.v-1'>fn <a href='#method.scaled_rotation_between' class='fnname'>scaled_rotation_between</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;_: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/id.rs.html#118-124' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Rotation.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,17 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Scaling` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Scaling"><title>alga::linear::Scaling - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Scaling</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.from_real">from_real</a><a href="#method.powf">powf</a><a href="#method.scale_between">scale_between</a><a href="#method.to_real">to_real</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Scaling', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#196-226' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Scaling</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Scaling&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.AffineTransformation.html" title="trait alga::linear::AffineTransformation">AffineTransformation</a>&lt;E, NonUniformScaling = Self, Translation = <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a>, Rotation = <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a>&gt; + <a class="trait" href="../../alga/general/trait.SubsetOf.html" title="trait alga::general::SubsetOf">SubsetOf</a>&lt;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>&gt; {
fn <a href='#method.to_real' class='fnname'>to_real</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a> { ... }
<div class='item-spacer'></div> fn <a href='#method.from_real' class='fnname'>from_real</a>(r: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt; { ... }
<div class='item-spacer'></div> fn <a href='#method.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt; { ... }
<div class='item-spacer'></div> fn <a href='#method.scale_between' class='fnname'>scale_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt; { ... }
}</pre></div><div class='docblock'><p>Subgroups of the (signed) uniform scaling group.</p>
</div>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.to_real' class='method'><code id='to_real.v'>fn <a href='#method.to_real' class='fnname'>to_real</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a></code></h3><div class='docblock'><p>Converts this scaling factor to a real. Same as <code>self.to_superset()</code>.</p>
</div><h3 id='method.from_real' class='method'><code id='from_real.v'>fn <a href='#method.from_real' class='fnname'>from_real</a>(r: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Attempts to convert a real to an element of this scaling subgroup. Same as
<code>Self::from_superset()</code>. Returns <code>None</code> if no such scaling is possible for this subgroup.</p>
</div><h3 id='method.powf' class='method'><code id='powf.v'>fn <a href='#method.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Raises the scaling to a power. The result must be equivalent to
<code>self.to_superset().powf(n)</code>. Returns <code>None</code> if the result is not representable by <code>Self</code>.</p>
</div><h3 id='method.scale_between' class='method'><code id='scale_between.v'>fn <a href='#method.scale_between' class='fnname'>scale_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>The scaling required to make <code>a</code> have the same norm as <code>b</code>, i.e., <code>|b| = |a| * norm_ratio(a, b)</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Scaling%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; Scaling&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-Scaling%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#97' title='goto source code'>[src]</a></h3><div class='impl-items'></div><h3 id='impl-Scaling%3CE%3E-1' class='impl'><code class='in-band'>impl&lt;R, E&gt; Scaling&lt;E&gt; for R <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;R: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a> + <a class="trait" href="../../alga/general/trait.SubsetOf.html" title="trait alga::general::SubsetOf">SubsetOf</a>&lt;R&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&lt;RealField = R&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>: <a class="trait" href="../../alga/general/trait.ClosedMul.html" title="trait alga::general::ClosedMul">ClosedMul</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedDiv.html" title="trait alga::general::ClosedDiv">ClosedDiv</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedNeg.html" title="trait alga::general::ClosedNeg">ClosedNeg</a>,&nbsp;</span></code><a href='#impl-Scaling%3CE%3E-1' class='anchor'></a><a class='srclink' href='../../src/alga/linear/transformation.rs.html#374-399' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.to_real-1' class="method hidden"><code id='to_real.v-1'>fn <a href='#method.to_real-1' class='fnname'>to_real</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a></code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#381-383' title='goto source code'>[src]</a></h4><h4 id='method.from_real-1' class="method hidden"><code id='from_real.v-1'>fn <a href='#method.from_real-1' class='fnname'>from_real</a>(r: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#386-388' title='goto source code'>[src]</a></h4><h4 id='method.powf-1' class="method hidden"><code id='powf.v-1'>fn <a href='#method.powf-1' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#391-393' title='goto source code'>[src]</a></h4><h4 id='method.scale_between-1' class="method hidden"><code id='scale_between.v-1'>fn <a href='#method.scale_between-1' class='fnname'>scale_between</a>(a: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>, b: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#396-398' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Scaling.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,22 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `SquareMatrix` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, SquareMatrix"><title>alga::linear::SquareMatrix - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait SquareMatrix</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.Vector">Vector</a></div><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.determinant">determinant</a><a href="#tymethod.diagonal">diagonal</a><a href="#tymethod.try_inverse">try_inverse</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.dimension">dimension</a><a href="#method.transpose_mut">transpose_mut</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'SquareMatrix', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/matrix.rs.html#90-122' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>SquareMatrix</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait SquareMatrix: <a class="trait" href="../../alga/linear/trait.Matrix.html" title="trait alga::linear::Matrix">Matrix</a>&lt;Row = Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>, Column = Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>, Transpose = Self&gt; + <a class="trait" href="../../alga/general/trait.MultiplicativeMonoid.html" title="trait alga::general::MultiplicativeMonoid">MultiplicativeMonoid</a> {
type <a href='#associatedtype.Vector' class="type">Vector</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;;
fn <a href='#tymethod.diagonal' class='fnname'>diagonal</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.determinant' class='fnname'>determinant</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.try_inverse' class='fnname'>try_inverse</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
fn <a href='#method.dimension' class='fnname'>dimension</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a> { ... }
<div class='item-spacer'></div> fn <a href='#method.transpose_mut' class='fnname'>transpose_mut</a>(&amp;mut self) { ... }
}</pre></div><div class='docblock'><p>The monoid of all square matrices, including non-inversible ones.</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.Vector' class='method'><code id='Vector.t'>type <a href='#associatedtype.Vector' class="type">Vector</a>: <a class="trait" href="../../alga/linear/trait.FiniteDimVectorSpace.html" title="trait alga::linear::FiniteDimVectorSpace">FiniteDimVectorSpace</a>&lt;Field = Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a>&gt;</code></h3><div class='docblock'><p>The type of rows, column, and diagonal of this matrix.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.diagonal' class='method'><code id='diagonal.v'>fn <a href='#tymethod.diagonal' class='fnname'>diagonal</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a></code></h3><div class='docblock'><p>The diagonal of this matrix.</p>
</div><h3 id='tymethod.determinant' class='method'><code id='determinant.v'>fn <a href='#tymethod.determinant' class='fnname'>determinant</a>(&amp;self) -&gt; Self::<a class="type" href="../../alga/linear/trait.Matrix.html#associatedtype.Field" title="type alga::linear::Matrix::Field">Field</a></code></h3><div class='docblock'><p>The determinant of this matrix.</p>
</div><h3 id='tymethod.try_inverse' class='method'><code id='try_inverse.v'>fn <a href='#tymethod.try_inverse' class='fnname'>try_inverse</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Attempts to two_sided_inverse <code>self</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.dimension' class='method'><code id='dimension.v'>fn <a href='#method.dimension' class='fnname'>dimension</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code></h3><div class='docblock'><p>The number of rows or column of this matrix.</p>
</div><h3 id='method.transpose_mut' class='method'><code id='transpose_mut.v'>fn <a href='#method.transpose_mut' class='fnname'>transpose_mut</a>(&amp;mut self)</code></h3><div class='docblock'><p>In-place transposition.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.SquareMatrix.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,15 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `SquareMatrixMut` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, SquareMatrixMut"><title>alga::linear::SquareMatrixMut - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait SquareMatrixMut</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.from_diagonal">from_diagonal</a><a href="#tymethod.set_diagonal_mut">set_diagonal_mut</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.set_diagonal">set_diagonal</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'SquareMatrixMut', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/matrix.rs.html#125-146' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>SquareMatrixMut</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait SquareMatrixMut: <a class="trait" href="../../alga/linear/trait.SquareMatrix.html" title="trait alga::linear::SquareMatrix">SquareMatrix</a> + <a class="trait" href="../../alga/linear/trait.MatrixMut.html" title="trait alga::linear::MatrixMut">MatrixMut</a>&lt;Row = Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>, Column = Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>, Transpose = Self&gt; {
fn <a href='#tymethod.from_diagonal' class='fnname'>from_diagonal</a>(diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>) -&gt; Self;
<div class='item-spacer'></div> fn <a href='#tymethod.set_diagonal_mut' class='fnname'>set_diagonal_mut</a>(&amp;mut self, diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>);
fn <a href='#method.set_diagonal' class='fnname'>set_diagonal</a>(&amp;self, diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>) -&gt; Self { ... }
}</pre></div><div class='docblock'><p>The monoid of all mutable square matrices that are stable under modification of its diagonal.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.from_diagonal' class='method'><code id='from_diagonal.v'>fn <a href='#tymethod.from_diagonal' class='fnname'>from_diagonal</a>(diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>) -&gt; Self</code></h3><div class='docblock'><p>Constructs a new diagonal matrix.</p>
</div><h3 id='tymethod.set_diagonal_mut' class='method'><code id='set_diagonal_mut.v'>fn <a href='#tymethod.set_diagonal_mut' class='fnname'>set_diagonal_mut</a>(&amp;mut self, diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>)</code></h3><div class='docblock'><p>In-place sets the matrix diagonal.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.set_diagonal' class='method'><code id='set_diagonal.v'>fn <a href='#method.set_diagonal' class='fnname'>set_diagonal</a>(&amp;self, diag: &amp;Self::<a class="type" href="../../alga/linear/trait.SquareMatrix.html#associatedtype.Vector" title="type alga::linear::SquareMatrix::Vector">Vector</a>) -&gt; Self</code></h3><div class='docblock'><p>Sets the matrix diagonal.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.SquareMatrixMut.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,13 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Transformation` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Transformation"><title>alga::linear::Transformation - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Transformation</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.transform_point">transform_point</a><a href="#tymethod.transform_vector">transform_vector</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Transformation', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#10-19' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Transformation</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Transformation&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/general/trait.MultiplicativeMonoid.html" title="trait alga::general::MultiplicativeMonoid">MultiplicativeMonoid</a> {
fn <a href='#tymethod.transform_point' class='fnname'>transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E;
<div class='item-spacer'></div> fn <a href='#tymethod.transform_vector' class='fnname'>transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>;
}</pre></div><div class='docblock'><p>A general transformation acting on an euclidean space. It may not be inversible.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.transform_point' class='method'><code id='transform_point.v'>fn <a href='#tymethod.transform_point' class='fnname'>transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code></h3><div class='docblock'><p>Applies this group's action on a point from the euclidean space.</p>
</div><h3 id='tymethod.transform_vector' class='method'><code id='transform_vector.v'>fn <a href='#tymethod.transform_vector' class='fnname'>transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code></h3><div class='docblock'><p>Applies this group's action on a vector from the euclidean space.</p>
<p>If <code>v</code> is a vector and <code>a, b</code> two point such that <code>v = a - b</code>, the action <code></code> on a vector
is defined as <code>self ∘ v = (self × a) - (self × b)</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Transformation%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; Transformation&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-Transformation%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#13-23' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.transform_point' class="method hidden"><code id='transform_point.v-1'>fn <a href='#method.transform_point' class='fnname'>transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code><a class='srclink' href='../../src/alga/linear/id.rs.html#15-17' title='goto source code'>[src]</a></h4><h4 id='method.transform_vector' class="method hidden"><code id='transform_vector.v-1'>fn <a href='#method.transform_vector' class='fnname'>transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code><a class='srclink' href='../../src/alga/linear/id.rs.html#20-22' title='goto source code'>[src]</a></h4></div><h3 id='impl-Transformation%3CE%3E-1' class='impl'><code class='in-band'>impl&lt;R, E&gt; Transformation&lt;E&gt; for R <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;R: <a class="trait" href="../../alga/general/trait.RealField.html" title="trait alga::general::RealField">RealField</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;E: <a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&lt;RealField = R&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>: <a class="trait" href="../../alga/general/trait.ClosedMul.html" title="trait alga::general::ClosedMul">ClosedMul</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedDiv.html" title="trait alga::general::ClosedDiv">ClosedDiv</a>&lt;R&gt; + <a class="trait" href="../../alga/general/trait.ClosedNeg.html" title="trait alga::general::ClosedNeg">ClosedNeg</a>,&nbsp;</span></code><a href='#impl-Transformation%3CE%3E-1' class='anchor'></a><a class='srclink' href='../../src/alga/linear/transformation.rs.html#292-307' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.transform_point-1' class="method hidden"><code id='transform_point.v-2'>fn <a href='#method.transform_point-1' class='fnname'>transform_point</a>(&amp;self, pt: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; E</code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#299-301' title='goto source code'>[src]</a></h4><h4 id='method.transform_vector-1' class="method hidden"><code id='transform_vector.v-2'>fn <a href='#method.transform_vector-1' class='fnname'>transform_vector</a>(&amp;self, v: &amp;E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code><a class='srclink' href='../../src/alga/linear/transformation.rs.html#304-306' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Transformation.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,19 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `Translation` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, Translation"><title>alga::linear::Translation - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait Translation</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#required-methods">Required Methods</a><div class="sidebar-links"><a href="#tymethod.from_vector">from_vector</a><a href="#tymethod.to_vector">to_vector</a></div><a class="sidebar-title" href="#provided-methods">Provided Methods</a><div class="sidebar-links"><a href="#method.powf">powf</a><a href="#method.translation_between">translation_between</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'Translation', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/transformation.rs.html#229-255' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>Translation</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait Translation&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt;: <a class="trait" href="../../alga/linear/trait.DirectIsometry.html" title="trait alga::linear::DirectIsometry">DirectIsometry</a>&lt;E, Translation = Self, Rotation = <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a>&gt; {
fn <a href='#tymethod.to_vector' class='fnname'>to_vector</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>;
<div class='item-spacer'></div> fn <a href='#tymethod.from_vector' class='fnname'>from_vector</a>(v: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;;
fn <a href='#method.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt; { ... }
<div class='item-spacer'></div> fn <a href='#method.translation_between' class='fnname'>translation_between</a>(a: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt; { ... }
}</pre></div><div class='docblock'><p>Subgroups of the n-dimensional translation group <code>T(n)</code>.</p>
</div>
<h2 id='required-methods' class='small-section-header'>Required methods<a href='#required-methods' class='anchor'></a></h2><div class='methods'><h3 id='tymethod.to_vector' class='method'><code id='to_vector.v'>fn <a href='#tymethod.to_vector' class='fnname'>to_vector</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code></h3><div class='docblock'><p>Converts this translation to a vector.</p>
</div><h3 id='tymethod.from_vector' class='method'><code id='from_vector.v'>fn <a href='#tymethod.from_vector' class='fnname'>from_vector</a>(v: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Attempts to convert a vector to this translation. Returns <code>None</code> if the translation
represented by <code>v</code> is not part of the translation subgroup represented by <code>Self</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='provided-methods' class='small-section-header'>Provided methods<a href='#provided-methods' class='anchor'></a></h2><div class='methods'><h3 id='method.powf' class='method'><code id='powf.v'>fn <a href='#method.powf' class='fnname'>powf</a>(&amp;self, n: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.RealField" title="type alga::linear::EuclideanSpace::RealField">RealField</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>Raises the translation to a power. The result must be equivalent to
<code>self.to_superset() * n</code>. Returns <code>None</code> if the result is not representable by <code>Self</code>.</p>
</div><h3 id='method.translation_between' class='method'><code id='translation_between.v'>fn <a href='#method.translation_between' class='fnname'>translation_between</a>(a: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E, b: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>E) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code></h3><div class='docblock'><p>The translation needed to make <code>a</code> coincide with <code>b</code>, i.e., <code>b = a * translation_to(a, b)</code>.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'><h3 id='impl-Translation%3CE%3E' class='impl'><code class='in-band'>impl&lt;E:&nbsp;<a class="trait" href="../../alga/linear/trait.EuclideanSpace.html" title="trait alga::linear::EuclideanSpace">EuclideanSpace</a>&gt; Translation&lt;E&gt; for <a class="struct" href="../../alga/general/struct.Id.html" title="struct alga::general::Id">Id</a></code><a href='#impl-Translation%3CE%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/id.rs.html#127-141' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.to_vector' class="method hidden"><code id='to_vector.v-1'>fn <a href='#method.to_vector' class='fnname'>to_vector</a>(&amp;self) -&gt; E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a></code><a class='srclink' href='../../src/alga/linear/id.rs.html#129-131' title='goto source code'>[src]</a></h4><h4 id='method.from_vector' class="method hidden"><code id='from_vector.v-1'>fn <a href='#method.from_vector' class='fnname'>from_vector</a>(v: E::<a class="type" href="../../alga/linear/trait.EuclideanSpace.html#associatedtype.Coordinates" title="type alga::linear::EuclideanSpace::Coordinates">Coordinates</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Self&gt;</code><a class='srclink' href='../../src/alga/linear/id.rs.html#134-140' title='goto source code'>[src]</a></h4></div></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.Translation.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `VectorSpace` trait in crate `alga`."><meta name="keywords" content="rust, rustlang, rust-lang, VectorSpace"><title>alga::linear::VectorSpace - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc trait"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../../alga/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Trait VectorSpace</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#associated-types">Associated Types</a><div class="sidebar-links"><a href="#associatedtype.Field">Field</a></div><a class="sidebar-title" href="#foreign-impls">Implementations on Foreign Types</a><div class="sidebar-links"><a href="#impl-VectorSpace-for-Complex%3CN%3E">Complex&lt;N&gt;</a></div><a class="sidebar-title" href="#implementors">Implementors</a></div><p class='location'><a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a></p><script>window.sidebarCurrent = {name: 'VectorSpace', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../../src/alga/linear/vector.rs.html#11-17' title='goto source code'>[src]</a></span><span class='in-band'>Trait <a href='../index.html'>alga</a>::<wbr><a href='index.html'>linear</a>::<wbr><a class="trait" href=''>VectorSpace</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class='rust trait'>pub trait VectorSpace: <a class="trait" href="../../alga/general/trait.Module.html" title="trait alga::general::Module">Module</a>&lt;Ring = Self::<a class="type" href="../../alga/linear/trait.VectorSpace.html#associatedtype.Field" title="type alga::linear::VectorSpace::Field">Field</a>&gt; {
type <a href='#associatedtype.Field' class="type">Field</a>: <a class="trait" href="../../alga/general/trait.Field.html" title="trait alga::general::Field">Field</a>;
}</pre></div><div class='docblock'><p>A vector space has a module structure over a field instead of a ring.</p>
</div>
<h2 id='associated-types' class='small-section-header'>Associated Types<a href='#associated-types' class='anchor'></a></h2><div class='methods'><h3 id='associatedtype.Field' class='method'><code id='Field.t'>type <a href='#associatedtype.Field' class="type">Field</a>: <a class="trait" href="../../alga/general/trait.Field.html" title="trait alga::general::Field">Field</a></code></h3><div class='docblock'><p>The underlying scalar field.</p>
</div></div><span class='loading-content'>Loading content...</span>
<h2 id='foreign-impls' class='small-section-header'>Implementations on Foreign Types<a href='#foreign-impls' class='anchor'></a></h2><h3 id='impl-VectorSpace-for-Complex%3CN%3E' class='impl'><code class='in-band'>impl&lt;N:&nbsp;<a class="trait" href="../../alga/general/trait.Field.html" title="trait alga::general::Field">Field</a> + <a class="trait" href="../../num_traits/trait.NumAssign.html" title="trait num_traits::NumAssign">NumAssign</a>&gt; <a class="trait" href="../../alga/linear/trait.VectorSpace.html" title="trait alga::linear::VectorSpace">VectorSpace</a> for <a class="struct" href="../../num_complex/struct.Complex.html" title="struct num_complex::Complex">Complex</a>&lt;N&gt;</code><a href='#impl-VectorSpace-for-Complex%3CN%3E' class='anchor'></a><a class='srclink' href='../../src/alga/linear/vector.rs.html#226-228' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Field-1' class="type"><code id='Field.t-1'>type <a href='#associatedtype.Field' class="type">Field</a> = N</code></h4></div><span class='loading-content'>Loading content...</span>
<h2 id='implementors' class='small-section-header'>Implementors<a href='#implementors' class='anchor'></a></h2><div class='item-list' id='implementors-list'></div><span class='loading-content'>Loading content...</span><script type="text/javascript">window.inlined_types=new Set([]);</script><script type="text/javascript" async
src="../../implementors/alga/linear/trait.VectorSpace.js">
</script></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "alga";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.AffineTransformation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.AffineTransformation.html">../../../alga/linear/trait.AffineTransformation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.AffineTransformation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.DirectIsometry.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.DirectIsometry.html">../../../alga/linear/trait.DirectIsometry.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.DirectIsometry.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Isometry.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Isometry.html">../../../alga/linear/trait.Isometry.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Isometry.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.OrthogonalTransformation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.OrthogonalTransformation.html">../../../alga/linear/trait.OrthogonalTransformation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.OrthogonalTransformation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.ProjectiveTransformation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.ProjectiveTransformation.html">../../../alga/linear/trait.ProjectiveTransformation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.ProjectiveTransformation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Rotation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Rotation.html">../../../alga/linear/trait.Rotation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Rotation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Scaling.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Scaling.html">../../../alga/linear/trait.Scaling.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Scaling.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Similarity.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Similarity.html">../../../alga/linear/trait.Similarity.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Similarity.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Transformation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Transformation.html">../../../alga/linear/trait.Transformation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Transformation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.Translation.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.Translation.html">../../../alga/linear/trait.Translation.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.Translation.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.AffineSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.AffineSpace.html">../../../alga/linear/trait.AffineSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.AffineSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.EuclideanSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.EuclideanSpace.html">../../../alga/linear/trait.EuclideanSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.EuclideanSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.FiniteDimInnerSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.FiniteDimInnerSpace.html">../../../alga/linear/trait.FiniteDimInnerSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.FiniteDimInnerSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.FiniteDimVectorSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.FiniteDimVectorSpace.html">../../../alga/linear/trait.FiniteDimVectorSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.FiniteDimVectorSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.InnerSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.InnerSpace.html">../../../alga/linear/trait.InnerSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.InnerSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.NormedSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.NormedSpace.html">../../../alga/linear/trait.NormedSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.NormedSpace.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../alga/linear/trait.VectorSpace.html">
</head>
<body>
<p>Redirecting to <a href="../../../alga/linear/trait.VectorSpace.html">../../../alga/linear/trait.VectorSpace.html</a>...</p>
<script>location.replace("../../../alga/linear/trait.VectorSpace.html" + location.search + location.hash);</script>
</body>
</html>