Deployed b77aa523 to HEAD with MkDocs 1.6.1 and mike 2.1.3

This commit is contained in:
github-actions committed 2024-11-24 13:25:13 +00:00
1 parent 747066ecd2
commit a5d33dffa5
26 files changed
+129 -129

No files matched your search

+5 -5
View File
@@ -1,4 +1,4 @@
<!DOCTYPE html><html lang='en'><head><title>[qties]</title><meta charset='UTF-8'/><link rel='stylesheet' type='text/css' href='14882.css'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Serif'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Sans'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Sans+Mono'/><link rel='icon' href='icon.png'/><link rel='stylesheet' type='text/css' href='expanded.css' title='Normal'/><link rel='alternate stylesheet' type='text/css' href='colored.css' title='Notes and examples colored'/><link rel='alternate stylesheet' type='text/css' href='normative-only.css' title='Notes and examples hidden'/></head><body><div class='wrapper'><h1 ><a class='secnum' style='min-width:50pt'>5</a> Quantities library <a class='abbr_ref' href='index.html#qties'>[qties]</a></h1><div id='summary' class='section'><h2 ><a class='secnum' href='#summary' style='min-width:65pt'>5.1</a> Summary <a class='abbr_ref' href='qties.summary.html'>[qties.summary]</a></h2><div class='para' id='summary-1'><div class='marginalizedparent'><a class='marginalized' href='#summary-1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L6'>#</a></div><div class='texpara'><div id='summary-1.sentence-1' class='sentence'>This Clause describes components for dealing with quantities,
<!DOCTYPE html><html lang='en'><head><title>[qties]</title><meta charset='UTF-8'/><link rel='stylesheet' type='text/css' href='14882.css'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Serif'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Sans'/><link rel='stylesheet' type='text/css' href='https://fonts.googleapis.com/css2?family=Noto+Sans+Mono'/><link rel='icon' href='icon.png'/><link rel='stylesheet' type='text/css' href='expanded.css' title='Normal'/><link rel='alternate stylesheet' type='text/css' href='colored.css' title='Notes and examples colored'/><link rel='alternate stylesheet' type='text/css' href='normative-only.css' title='Notes and examples hidden'/></head><body><div class='wrapper'><h1 ><a class='secnum' style='min-width:50pt'>5</a> Quantities library <a class='abbr_ref' href='index.html#qties'>[qties]</a></h1><div id='summary' class='section'><h2 ><a class='secnum' href='#summary' style='min-width:65pt'>5.1</a> Summary <a class='abbr_ref' href='qties.summary.html'>[qties.summary]</a></h2><div class='para' id='summary-1'><div class='marginalizedparent'><a class='marginalized' href='#summary-1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L6'>#</a></div><div class='texpara'><div id='summary-1.sentence-1' class='sentence'>This Clause describes components for dealing with quantities,
as summarized in Table <a href='#tab:qties.summary' title='Table 3: Quantities library summary'>3</a><a class='hidden_link' href='#summary-1.sentence-1'>.</a></div></div><div class='texpara'><div class='numberedTable' id='tab:qties.summary'>Table <a href='#tab:qties.summary'>3</a>: Quantities library summary&emsp;<a href='./tab:qties.summary.html'>[tab:qties.summary]</a><br><table ><tr id='tab:qties.summary-row-1' class='rowsep'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-1'>🔗</a></div></td><td class='empty left'></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-1-column-2-sentence-1' class='sentence'><b>Subclause</b></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-1-column-3-sentence-1' class='sentence'><b>Module</b></div></div></td></tr><tr id='tab:qties.summary-row-2' class='capsep'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-2'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-2-column-1-sentence-1' class='sentence'><a href='#qty.helpers' title='5.5&emsp;Helpers'>[qty.<span class='shy'></span>helpers]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-2-column-2-sentence-1' class='sentence'>Helpers</div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-2-column-3-sentence-1' class='sentence'><span class='texttt'>mp_<span class='shy'></span>units<span class='operator'>.</span>core</span></div></div></td></tr><tr id='tab:qties.summary-row-3'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-3'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-3-column-1-sentence-1' class='sentence'><a href='#qty.traits' title='5.6&emsp;Traits'>[qty.<span class='shy'></span>traits]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-3-column-2-sentence-1' class='sentence'>Traits</div></div></td><td class='empty left'></td></tr><tr id='tab:qties.summary-row-4'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-4'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-4-column-1-sentence-1' class='sentence'><a href='#qty.concepts' title='5.7&emsp;Concepts'>[qty.<span class='shy'></span>concepts]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-4-column-2-sentence-1' class='sentence'>Concepts</div></div></td><td class='empty left'></td></tr><tr id='tab:qties.summary-row-5'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-5'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-5-column-1-sentence-1' class='sentence'><a href='#qty.types' title='5.8&emsp;Types'>[qty.<span class='shy'></span>types]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-5-column-2-sentence-1' class='sentence'>Types</div></div></td><td class='empty left'></td></tr><tr id='tab:qties.summary-row-6'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-6'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-6-column-1-sentence-1' class='sentence'><a href='#qty.compat' title='5.9&emsp;Compatibility'>[qty.<span class='shy'></span>compat]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-6-column-2-sentence-1' class='sentence'>Compatibility</div></div></td><td class='empty left'></td></tr><tr id='tab:qties.summary-row-7'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-7'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-7-column-1-sentence-1' class='sentence'><a href='#qty.one' title='5.10&emsp;Dimension one'>[qty.<span class='shy'></span>one]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-7-column-2-sentence-1' class='sentence'>Dimension one</div></div></td><td class='empty left'></td></tr><tr id='tab:qties.summary-row-8' class='rowsep'><td class='hidden'><div class='marginalizedparent'><a class='itemDeclLink' href='#tab:qties.summary-row-8'>🔗</a></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-8-column-1-sentence-1' class='sentence'><a href='#qty.systems' title='5.11&emsp;Systems'>[qty.<span class='shy'></span>systems]</a></div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-8-column-2-sentence-1' class='sentence'>Systems</div></div></td><td class='left'><div class='texpara'><div id='tab:qties.summary-row-8-column-3-sentence-1' class='sentence'><span class='texttt'>mp_<span cLine truncated
<span class='keyword'>export</span> <span class='keyword'>import</span> mp_units<span class='operator'>.</span>core;
@@ -79,7 +79,7 @@ as summarized in Table <a href='#tab:qties.summary' title='Table 3: Quantities l
<span class='curlybracket'>}</span>
</span></span></div></div><div id='qty.helpers' class='section'><h2 ><a class='secnum' href='#qty.helpers' style='min-width:65pt'>5.5</a> Helpers <a class='abbr_ref' href='qty.helpers.html'>[qty.helpers]</a></h2><div class='texpara'><div class='itemdecl' id='qty.helpers-itemdecl:1'><div class='marginalizedparent'><a class='itemDeclLink' href='#qty.helpers-itemdecl:1'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>consteval</span> <span class='keyword'>bool</span> <span class='texttt'><i >converts-to-base-subobject-of</i></span><span class='parenthesis'>(</span>std<span class='operator'>::</span>meta type, std<span class='operator'>::</span>meta template_name<span class='parenthesis'>)</span>;
</code></div></div><div class='para' id='qty.helpers-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.helpers-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L122'>#</a></div><div class='texpara'><div id='qty.helpers-1.sentence-1' class='sentence'><i >Preconditions</i>: <span class='texttt'>is_<span class='shy'></span>type<span class='parenthesis'>(</span>type<span class='parenthesis'>)</span> <span class='operator'>&amp;</span><span class='operator'>&amp;</span> is_<span class='shy'></span>template<span class='parenthesis'>(</span>template_<span class='shy'></span>name<span class='parenthesis'>)</span></span> is <span class='texttt'><span class='literal'>true</span></span><a class='hidden_link' href='#qty.helpers-1.sentence-1'>.</a></div></div></div></div><div class='para' id='qty.helpers-2'><div class='marginalizedparent'><a class='marginalized' href='#qty.helpers-2'>2</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L126'>#</a></div><div class='texpara'><div id='qty.helpers-2.sentence-1' class='sentence'><i >Returns</i>: <span class='texttt'><span class='literal'>true</span></span> if
</code></div></div><div class='para' id='qty.helpers-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.helpers-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L122'>#</a></div><div class='texpara'><div id='qty.helpers-1.sentence-1' class='sentence'><i >Preconditions</i>: <span class='texttt'>is_<span class='shy'></span>type<span class='parenthesis'>(</span>type<span class='parenthesis'>)</span> <span class='operator'>&amp;</span><span class='operator'>&amp;</span> is_<span class='shy'></span>template<span class='parenthesis'>(</span>template_<span class='shy'></span>name<span class='parenthesis'>)</span></span> is <span class='texttt'><span class='literal'>true</span></span><a class='hidden_link' href='#qty.helpers-1.sentence-1'>.</a></div></div></div></div><div class='para' id='qty.helpers-2'><div class='marginalizedparent'><a class='marginalized' href='#qty.helpers-2'>2</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L126'>#</a></div><div class='texpara'><div id='qty.helpers-2.sentence-1' class='sentence'><i >Returns</i>: <span class='texttt'><span class='literal'>true</span></span> if
<span class='texttt'><span class='squarebracket'>[</span><span class='operator'>:</span>type<span class='operator'>:</span><span class='squarebracket'>]</span></span> has an unambiguous and accessible base
that is a specialization of <span class='texttt'><span class='squarebracket'>[</span><span class='operator'>:</span>template_<span class='shy'></span>name<span class='operator'>:</span><span class='squarebracket'>]</span></span>, and
<span class='texttt'><span class='literal'>false</span></span> otherwise<a class='hidden_link' href='#qty.helpers-2.sentence-1'>.</a></div></div></div></div></div><div id='qty.traits' class='section'><h2 ><a class='secnum' href='#qty.traits' style='min-width:65pt'>5.6</a> Traits <a class='abbr_ref' href='qty.traits.html'>[qty.traits]</a></h2><div class='texpara'><div class='itemdecl' id='qty.traits-itemdecl:1'><div class='marginalizedparent'><a class='itemDeclLink' href='#qty.traits-itemdecl:1'>🔗</a></div><code class='itemdeclcode'><span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>typename</span> Rep<span class='anglebracket'>&gt;</span>
@@ -91,7 +91,7 @@ that is a specialization of <span class='texttt'><span class='squarebracket'>[</
<span class='keyword'>template</span><span class='anglebracket'>&lt;</span><span class='keyword'>typename</span> Rep<span class='anglebracket'>&gt;</span>
<span class='keyword'>constexpr</span> <span class='keyword'>bool</span> <span id='lib:is_tensor'><a class='hidden_link' href='#lib:is_tensor' title='5.6&emsp;Traits&emsp;[qty.traits]'>is_tensor</a></span> <span class='operator'>=</span> <span class='literal'>false</span>;
</code></div></div><div class='para' id='qty.traits-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.traits-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L149'>#</a></div><div class='texpara'><div id='qty.traits-1.sentence-1' class='sentence'><i >Remarks</i>: Pursuant to <a href="https://wg21.link/namespace.std">N4971, [namespace.std]</a> (<a href='spec.ext.html' title='4.1&emsp;External'>[spec.<span class='shy'></span>ext]</a>),
</code></div></div><div class='para' id='qty.traits-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.traits-1'>1</a></div><div class='itemdescr'><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L149'>#</a></div><div class='texpara'><div id='qty.traits-1.sentence-1' class='sentence'><i >Remarks</i>: Pursuant to <a href="https://wg21.link/namespace.std">N4971, [namespace.std]</a> (<a href='spec.ext.html' title='4.1&emsp;External'>[spec.<span class='shy'></span>ext]</a>),
users may specialize <span class='texttt'>is_<span class='shy'></span>scalar</span>, <span class='texttt'>is_<span class='shy'></span>vector</span>, and <span class='texttt'>is_<span class='shy'></span>tensor</span> to <span class='texttt'><span class='literal'>true</span></span>
for cv-unqualified program-defined types
which respectively represent
@@ -115,12 +115,12 @@ and <span class='texttt'><span class='literal'>false</span></span> for types whi
<a class='index' id='conceptref:named-quantity-spec'></a><span class='texttt'><i >named-quantity-spec</i></span><span class='anglebracket'>&lt;</span>T<span class='anglebracket'>&gt;</span> <span class='operator'>|</span><span class='operator'>|</span>
detail<span class='operator'>::</span>IntermediateDerivedQuantitySpec<span class='anglebracket'>&lt;</span>T<span class='anglebracket'>&gt;</span> <span class='operator'>|</span><span class='operator'>|</span>
template_of<span class='parenthesis'>(</span><span class='operator'>^</span>T<span class='parenthesis'>)</span> <span class='operator'>=</span><span class='operator'>=</span> <span class='operator'>^</span>kind_of;
</code></div></div></div><div id='qty.types' class='section'><h2 ><a class='secnum' href='#qty.types' style='min-width:65pt'>5.8</a> Types <a class='abbr_ref' href='qty.types.html'>[qty.types]</a></h2><div id='qty.types.general' class='section'><h3 ><a class='secnum' href='#qty.types.general' style='min-width:80pt'>5.8.1</a> General <a class='abbr_ref' href='qty.types.general.html'>[qty.types.general]</a></h3><div class='para' id='qty.types.general-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.types.general-1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L196'>#</a></div><div class='texpara'><div id='qty.types.general-1.sentence-1' class='sentence'>A <a class='hidden_link' href='#def:type,quantity' title='5.8.1&emsp;General&emsp;[qty.types.general]'><span id='def:type,quantity'><i >quantity type</i></span></a>
</code></div></div></div><div id='qty.types' class='section'><h2 ><a class='secnum' href='#qty.types' style='min-width:65pt'>5.8</a> Types <a class='abbr_ref' href='qty.types.html'>[qty.types]</a></h2><div id='qty.types.general' class='section'><h3 ><a class='secnum' href='#qty.types.general' style='min-width:80pt'>5.8.1</a> General <a class='abbr_ref' href='qty.types.general.html'>[qty.types.general]</a></h3><div class='para' id='qty.types.general-1'><div class='marginalizedparent'><a class='marginalized' href='#qty.types.general-1'>1</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L196'>#</a></div><div class='texpara'><div id='qty.types.general-1.sentence-1' class='sentence'>A <a class='hidden_link' href='#def:type,quantity' title='5.8.1&emsp;General&emsp;[qty.types.general]'><span id='def:type,quantity'><i >quantity type</i></span></a>
is a type <span class='texttt'><i >Q</i></span>
that is a specialization of <span class='texttt'>quantity</span> or <span class='texttt'>quantity_<span class='shy'></span>point</span><a class='hidden_link' href='#qty.types.general-1.sentence-1'>.</a></div> <div id='qty.types.general-1.sentence-2' class='sentence'><span class='texttt'><i >Q</i></span> represents a quantity (<a href="https://www.electropedia.org/iev/iev.nsf/display?openform&ievref=112-01-01">IEC 60050, 112-01-01</a>)
with <span class='texttt'><i >Q</i><span class='operator'>&#x200b;::&#x200b;</span>rep</span> as its number
and <span class='texttt'><i >Q</i><span class='operator'>&#x200b;::&#x200b;</span>reference</span> as its reference<a class='hidden_link' href='#qty.types.general-1.sentence-2'>.</a></div> <div id='qty.types.general-1.sentence-3' class='sentence'><span class='texttt'><i >Q</i></span> is a structural type (<a href="https://wg21.link/temp.paramterm.structural.type">N4971, [temp.param]</a>)
if <span class='texttt'><i >Q</i><span class='operator'>&#x200b;::&#x200b;</span>rep</span> is a structural type<a class='hidden_link' href='#qty.types.general-1.sentence-3'>.</a></div></div></div><div class='para' id='qty.types.general-2'><div class='marginalizedparent'><a class='marginalized' href='#qty.types.general-2'>2</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsbda112418a6bff3fd58e435e4e5fafefbcbf7a58/source/quantities.tex#L206'>#</a></div><div class='texpara'><div id='qty.types.general-2.sentence-1' class='sentence'>Each class template defined in subclause <a href='#qty.types' title='5.8&emsp;Types'>[qty.<span class='shy'></span>types]</a>
if <span class='texttt'><i >Q</i><span class='operator'>&#x200b;::&#x200b;</span>rep</span> is a structural type<a class='hidden_link' href='#qty.types.general-1.sentence-3'>.</a></div></div></div><div class='para' id='qty.types.general-2'><div class='marginalizedparent'><a class='marginalized' href='#qty.types.general-2'>2</a></div><div class='sourceLinkParent'><a class='sourceLink' href='https://github.com/mpusz/mp-unitsb77aa52355715d292a0fc15e3b3084281f01f844/source/quantities.tex#L206'>#</a></div><div class='texpara'><div id='qty.types.general-2.sentence-1' class='sentence'>Each class template defined in subclause <a href='#qty.types' title='5.8&emsp;Types'>[qty.<span class='shy'></span>types]</a>
has data members and special members specified below, and
has no base classes or members other than those specified<a class='hidden_link' href='#qty.types.general-2.sentence-1'>.</a></div></div></div></div><div id='qty.type' class='section'><h3 ><a class='secnum' href='#qty.type' style='min-width:80pt'>5.8.2</a> Class template <span class='texttt'>quantity</span> <a class='abbr_ref' href='qty.type.html'>[qty.type]</a></h3><div class='texpara'><span class='codeblock'><span class='keyword'>namespace</span> mp_units <span class='curlybracket'>{</span>