/trunk/DOC/html/compute__force_8cc-source.html
HTML | 1793 lines | 1792 code | 0 blank | 1 comment | 0 complexity | 84a532356590ce2c77c67f7501772fc1 MD5 | raw file
Possible License(s): GPL-3.0
Large files files are truncated, but you can click here to view the full file
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
- <title>TARANG-MPI: compute_force.cc Source File</title>
- <link href="doxygen.css" rel="stylesheet" type="text/css">
- <link href="tabs.css" rel="stylesheet" type="text/css">
- </head><body>
- <!-- Generated by Doxygen 1.5.6 -->
- <div class="navigation" id="top">
- <div class="tabs">
- <ul>
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <h1>compute_force.cc</h1><a href="compute__force_8cc.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001
- <a name="l00002"></a>00002 <span class="comment">// SPECTRAL Version 1.0</span>
- <a name="l00003"></a>00003 <span class="comment">// Date: 16 Sept. 2007</span>
- <a name="l00004"></a>00004 <span class="comment">// Author: M. K. Verma</span>
- <a name="l00005"></a>00005 <span class="comment">// Filename: compute_add_force.cc</span>
- <a name="l00006"></a>00006
- <a name="l00007"></a>00007 <span class="preprocessor">#include "<a class="code" href="IncFluid_8h.html">IncFluid.h</a>"</span>
- <a name="l00008"></a>00008
- <a name="l00009"></a>00009 <span class="comment">/*=============================================================================</span>
- <a name="l00010"></a>00010 <span class="comment"></span>
- <a name="l00011"></a>00011 <span class="comment"> Compute_force()</span>
- <a name="l00012"></a>00012 <span class="comment"> With parameters that is passed from the main prog</span>
- <a name="l00013"></a>00013 <span class="comment"> For fluid, passive-scalar, mhd, mangnetic-temperature</span>
- <a name="l00014"></a>00014 <span class="comment"> For RB-convection:</span>
- <a name="l00015"></a>00015 <span class="comment"> </span>
- <a name="l00016"></a>00016 <span class="comment"> For Pr_large, u_small: nlin1 = T[(U.grad)U1] - Ra*Pr*T(k) </span>
- <a name="l00017"></a>00017 <span class="comment"> For Pr_large, u_large: nlin1 = T[(U.grad)U1] - T(k) </span>
- <a name="l00018"></a>00018 <span class="comment"> For Pr_small or 0, u_small: nlin1 = T[(U.grad)U1] - T(k) </span>
- <a name="l00019"></a>00019 <span class="comment"> For Pr_small or 0, u_large: nlin1 = T[(U.grad)U1] - Ra*T(k) </span>
- <a name="l00020"></a>00020 <span class="comment"></span>
- <a name="l00021"></a>00021 <span class="comment">=================================================================================*/</span>
- <a name="l00022"></a>00022
- <a name="l00023"></a><a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">00023</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">IncFluid::Compute_force</a>()
- <a name="l00024"></a>00024 {
- <a name="l00025"></a>00025 <span class="keywordflow">switch</span> (<a class="code" href="classIncFluid.html#be6a535bbf3b51ff6b226f9d1ce0e2e3">force_field_proc</a>)
- <a name="l00026"></a>00026 {
- <a name="l00027"></a>00027 <span class="keywordflow">case</span> (0) : <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">Compute_force_decay</a>(); <span class="keywordflow">break</span>; <span class="comment">// Decaying </span>
- <a name="l00028"></a>00028 <span class="keywordflow">case</span> (1) : <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">Compute_force_const_energy_helicity_supply</a>(); <span class="keywordflow">break</span>;
- <a name="l00029"></a>00029 <span class="keywordflow">case</span> (2) : <a class="code" href="classIncFluid.html#427206858e52e4c0091ba4b0caec6c7c">Compute_force_const_energy_helicity</a>(); <span class="keywordflow">break</span>;
- <a name="l00030"></a>00030 <span class="keywordflow">case</span> (3) : <a class="code" href="classIncFluid.html#61e150904c23f3bd85d7bb18efb22916">Compute_force_Taylor_Green</a>(); <span class="keywordflow">break</span>;
- <a name="l00031"></a>00031 <span class="keywordflow">case</span> (4) : <a class="code" href="classIncFluid.html#3e40e36bb1392df4485bdbf30c682d17">Compute_force_ABC</a>(); <span class="keywordflow">break</span>;
- <a name="l00032"></a>00032 <span class="keywordflow">case</span> (5) : <a class="code" href="classIncFluid.html#2f2382a476338166dc905d0c61866b52">Compute_force_given_modes_SIMPLE</a>(); <span class="keywordflow">break</span>;
- <a name="l00033"></a>00033 <span class="keywordflow">case</span> (6) : <a class="code" href="classIncFluid.html#dc7dc27576110bc046c422bf8d311b57">Compute_force_given_modes_VORTICITY</a>(); <span class="keywordflow">break</span>;
- <a name="l00034"></a>00034 <span class="keywordflow">case</span> (11) : <a class="code" href="classIncFluid.html#e0293b45a04a6373b6ee8e158d7ee7be">Compute_force_Liquid_metal</a>(); <span class="keywordflow">break</span>;
- <a name="l00035"></a>00035 }
- <a name="l00036"></a>00036 }
- <a name="l00037"></a>00037
- <a name="l00038"></a>00038 <span class="comment">//</span>
- <a name="l00039"></a>00039 <span class="comment">//</span>
- <a name="l00040"></a>00040
- <a name="l00041"></a><a class="code" href="classIncFluid.html#7651b71e1389347b3b05481d5b03e6b1">00041</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">IncFluid::Compute_force</a>(<a class="code" href="classIncSF.html">IncSF</a>& T)
- <a name="l00042"></a>00042 {
- <a name="l00043"></a>00043 <span class="keywordflow">switch</span> (<a class="code" href="classIncFluid.html#be6a535bbf3b51ff6b226f9d1ce0e2e3">force_field_proc</a>)
- <a name="l00044"></a>00044 {
- <a name="l00045"></a>00045 <span class="keywordflow">case</span> (0) : <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">Compute_force_decay</a>(T); <span class="keywordflow">break</span>; <span class="comment">// Decaying </span>
- <a name="l00046"></a>00046 <span class="keywordflow">case</span> (1) : <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">Compute_force_const_energy_helicity_supply</a>(T); <span class="keywordflow">break</span>;
- <a name="l00047"></a>00047 <span class="keywordflow">case</span> (2) : <a class="code" href="classIncFluid.html#427206858e52e4c0091ba4b0caec6c7c">Compute_force_const_energy_helicity</a>(T); <span class="keywordflow">break</span>;
- <a name="l00048"></a>00048 <span class="keywordflow">case</span> (3) : <a class="code" href="classIncFluid.html#61e150904c23f3bd85d7bb18efb22916">Compute_force_Taylor_Green</a>(T); <span class="keywordflow">break</span>;
- <a name="l00049"></a>00049 <span class="keywordflow">case</span> (4) : <a class="code" href="classIncFluid.html#3e40e36bb1392df4485bdbf30c682d17">Compute_force_ABC</a>(T); <span class="keywordflow">break</span>;
- <a name="l00050"></a>00050 <span class="keywordflow">case</span> (5) : <a class="code" href="classIncFluid.html#2f2382a476338166dc905d0c61866b52">Compute_force_given_modes_SIMPLE</a>(T); <span class="keywordflow">break</span>;
- <a name="l00051"></a>00051 <span class="keywordflow">case</span> (6) : <a class="code" href="classIncFluid.html#dc7dc27576110bc046c422bf8d311b57">Compute_force_given_modes_VORTICITY</a>(T); <span class="keywordflow">break</span>;
- <a name="l00052"></a>00052 }
- <a name="l00053"></a>00053 }
- <a name="l00054"></a>00054
- <a name="l00055"></a>00055 <span class="comment">//</span>
- <a name="l00056"></a>00056 <span class="comment">//</span>
- <a name="l00057"></a>00057
- <a name="l00058"></a><a class="code" href="classIncFluid.html#2ed39a17a965faa2e0b8788ccd58d481">00058</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">IncFluid::Compute_force</a>(<a class="code" href="classIncVF.html">IncVF</a>& W)
- <a name="l00059"></a>00059 {
- <a name="l00060"></a>00060 <span class="keywordflow">switch</span> (<a class="code" href="classIncFluid.html#be6a535bbf3b51ff6b226f9d1ce0e2e3">force_field_proc</a>)
- <a name="l00061"></a>00061 {
- <a name="l00062"></a>00062 <span class="keywordflow">case</span> (0) : <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">Compute_force_decay</a>(W); <span class="keywordflow">break</span>; <span class="comment">// Decaying </span>
- <a name="l00063"></a>00063 <span class="keywordflow">case</span> (1) : <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">Compute_force_const_energy_helicity_supply</a>(W); <span class="keywordflow">break</span>;
- <a name="l00064"></a>00064 <span class="keywordflow">case</span> (2) : <a class="code" href="classIncFluid.html#427206858e52e4c0091ba4b0caec6c7c">Compute_force_const_energy_helicity</a>(W); <span class="keywordflow">break</span>;
- <a name="l00065"></a>00065 <span class="keywordflow">case</span> (3) : <a class="code" href="classIncFluid.html#61e150904c23f3bd85d7bb18efb22916">Compute_force_Taylor_Green</a>(W); <span class="keywordflow">break</span>;
- <a name="l00066"></a>00066 <span class="keywordflow">case</span> (4) : <a class="code" href="classIncFluid.html#3e40e36bb1392df4485bdbf30c682d17">Compute_force_ABC</a>(W); <span class="keywordflow">break</span>;
- <a name="l00067"></a>00067 <span class="keywordflow">case</span> (5) : <a class="code" href="classIncFluid.html#2f2382a476338166dc905d0c61866b52">Compute_force_given_modes_SIMPLE</a>(W); <span class="keywordflow">break</span>;
- <a name="l00068"></a>00068 <span class="keywordflow">case</span> (6) : <a class="code" href="classIncFluid.html#dc7dc27576110bc046c422bf8d311b57">Compute_force_given_modes_VORTICITY</a>(W); <span class="keywordflow">break</span>;
- <a name="l00069"></a>00069 <span class="keywordflow">case</span> (11): <a class="code" href="classIncFluid.html#ad6c3c6c555db37ffbfc05338862d65d">Compute_force_DYNAMO_SIX_MODE</a>(W); <span class="keywordflow">break</span>;
- <a name="l00070"></a>00070 }
- <a name="l00071"></a>00071 }
- <a name="l00072"></a>00072
- <a name="l00073"></a>00073 <span class="comment">//</span>
- <a name="l00074"></a>00074 <span class="comment">//</span>
- <a name="l00075"></a>00075
- <a name="l00076"></a><a class="code" href="classIncFluid.html#b9dc50013cf07606a1765627af782663">00076</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">IncFluid::Compute_force</a>(<a class="code" href="classIncVF.html">IncVF</a>& W, <a class="code" href="classIncSF.html">IncSF</a>& T)
- <a name="l00077"></a>00077 {
- <a name="l00078"></a>00078 <span class="keywordflow">switch</span> (<a class="code" href="classIncFluid.html#be6a535bbf3b51ff6b226f9d1ce0e2e3">force_field_proc</a>)
- <a name="l00079"></a>00079 {
- <a name="l00080"></a>00080 <span class="keywordflow">case</span> (0) : <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">Compute_force_decay</a>(W, T); <span class="keywordflow">break</span>; <span class="comment">// Decaying </span>
- <a name="l00081"></a>00081 <span class="keywordflow">case</span> (1) : <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">Compute_force_const_energy_helicity_supply</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00082"></a>00082 <span class="keywordflow">case</span> (2) : <a class="code" href="classIncFluid.html#427206858e52e4c0091ba4b0caec6c7c">Compute_force_const_energy_helicity</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00083"></a>00083 <span class="keywordflow">case</span> (3) : <a class="code" href="classIncFluid.html#61e150904c23f3bd85d7bb18efb22916">Compute_force_Taylor_Green</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00084"></a>00084 <span class="keywordflow">case</span> (4) : <a class="code" href="classIncFluid.html#3e40e36bb1392df4485bdbf30c682d17">Compute_force_ABC</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00085"></a>00085 <span class="keywordflow">case</span> (5) : <a class="code" href="classIncFluid.html#2f2382a476338166dc905d0c61866b52">Compute_force_given_modes_SIMPLE</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00086"></a>00086 <span class="keywordflow">case</span> (6) : <a class="code" href="classIncFluid.html#dc7dc27576110bc046c422bf8d311b57">Compute_force_given_modes_VORTICITY</a>(W, T); <span class="keywordflow">break</span>;
- <a name="l00087"></a>00087 }
- <a name="l00088"></a>00088 }
- <a name="l00089"></a>00089
- <a name="l00090"></a>00090 <span class="comment">/*=============================================================================</span>
- <a name="l00091"></a>00091 <span class="comment"></span>
- <a name="l00092"></a>00092 <span class="comment"> Force for RB turbulence</span>
- <a name="l00093"></a>00093 <span class="comment"></span>
- <a name="l00094"></a>00094 <span class="comment">=================================================================================*/</span>
- <a name="l00095"></a>00095
- <a name="l00096"></a><a class="code" href="classIncFluid.html#b2d03a8cb79862962274a275f673d253">00096</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#b2d03a8cb79862962274a275f673d253">IncFluid::Compute_force_RB</a>(<a class="code" href="classIncSF.html">IncSF</a>& T, <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> Ra, <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> Pr, <span class="keywordtype">string</span> Pr_switch, <span class="keywordtype">string</span> RB_Uscaling)
- <a name="l00097"></a>00097 {
- <a name="l00098"></a>00098
- <a name="l00099"></a>00099 <span class="comment">// For the velocity field</span>
- <a name="l00100"></a>00100 <span class="keywordflow">if</span> (Pr_switch == <span class="stringliteral">"PRLARGE"</span>)
- <a name="l00101"></a>00101 {
- <a name="l00102"></a>00102 <span class="keywordflow">if</span> (RB_Uscaling == <span class="stringliteral">"USMALL"</span>)
- <a name="l00103"></a>00103 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = (Ra*Pr)*(*T.<a class="code" href="classCSF.html#3b75b0fe8368d57759f1a67a050e6367">F</a>); <span class="comment">// (u.grad)u-Ra*Pr*theta </span>
- <a name="l00104"></a>00104
- <a name="l00105"></a>00105 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (RB_Uscaling == <span class="stringliteral">"ULARGE"</span>)
- <a name="l00106"></a>00106 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = (*T.<a class="code" href="classCSF.html#3b75b0fe8368d57759f1a67a050e6367">F</a>); <span class="comment">// (u.grad)u-theta </span>
- <a name="l00107"></a>00107 }
- <a name="l00108"></a>00108
- <a name="l00109"></a>00109 <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((Pr_switch == <span class="stringliteral">"PRSMALL"</span>) || (Pr_switch == <span class="stringliteral">"PRZERO"</span>))
- <a name="l00110"></a>00110 {
- <a name="l00111"></a>00111 <span class="keywordflow">if</span> (RB_Uscaling == <span class="stringliteral">"USMALL"</span>)
- <a name="l00112"></a>00112 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = (Ra)*(*T.<a class="code" href="classCSF.html#3b75b0fe8368d57759f1a67a050e6367">F</a>); <span class="comment">// (u.grad)u-theta</span>
- <a name="l00113"></a>00113
- <a name="l00114"></a>00114 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (RB_Uscaling == <span class="stringliteral">"ULARGE"</span>)
- <a name="l00115"></a>00115 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = (Pr)*(*T.<a class="code" href="classCSF.html#3b75b0fe8368d57759f1a67a050e6367">F</a>); <span class="comment">// (u.grad)u-theta</span>
- <a name="l00116"></a>00116 }
- <a name="l00117"></a>00117
- <a name="l00118"></a>00118
- <a name="l00119"></a>00119 *<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0;
- <a name="l00120"></a>00120 *<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00121"></a>00121
- <a name="l00122"></a>00122 <span class="comment">// For the temperature field</span>
- <a name="l00123"></a>00123
- <a name="l00124"></a>00124 <span class="keywordflow">if</span> (Pr_switch == <span class="stringliteral">"PRZERO"</span>)
- <a name="l00125"></a>00125 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = 0.0; <span class="comment">// Do nothing; Nonlinear term (u.grad)T does not exist- see single-time step</span>
- <a name="l00126"></a>00126
- <a name="l00127"></a>00127 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Pr_switch == <span class="stringliteral">"PRLARGE"</span>)
- <a name="l00128"></a>00128 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = *<a class="code" href="classCVF.html#77e2105a2d7d2a35cc65987f28951841">V1</a>; <span class="comment">// F(T) = ux(k) </span>
- <a name="l00129"></a>00129
- <a name="l00130"></a>00130 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Pr_switch == <span class="stringliteral">"PRSMALL"</span>)
- <a name="l00131"></a>00131 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = complex<DP>(1/Pr, 0)*((*<a class="code" href="classCVF.html#77e2105a2d7d2a35cc65987f28951841">V1</a>)); ; <span class="comment">//F(T) = ux(k)/Pr</span>
- <a name="l00132"></a>00132
- <a name="l00133"></a>00133 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) <a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>(T);
- <a name="l00134"></a>00134
- <a name="l00135"></a>00135 }
- <a name="l00136"></a>00136
- <a name="l00137"></a><a class="code" href="classIncFluid.html#bca4ff3fa01026825950d6746251078c">00137</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#b2d03a8cb79862962274a275f673d253">IncFluid::Compute_force_RB</a>(<a class="code" href="classIncVF.html">IncVF</a>& W, <a class="code" href="classIncSF.html">IncSF</a>& T, <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> Ra, <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> Pr, <span class="keywordtype">string</span> Pr_switch, <span class="keywordtype">string</span> RB_Uscaling)
- <a name="l00138"></a>00138 {
- <a name="l00139"></a>00139 <a class="code" href="classIncFluid.html#b2d03a8cb79862962274a275f673d253">IncFluid::Compute_force_RB</a>(T, Ra, Pr, Pr_switch, RB_Uscaling);
- <a name="l00140"></a>00140
- <a name="l00141"></a>00141 *W.<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = 0.0;
- <a name="l00142"></a>00142 *W.<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0;
- <a name="l00143"></a>00143 *W.<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00144"></a>00144
- <a name="l00145"></a>00145 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) W.<a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>();
- <a name="l00146"></a>00146 }
- <a name="l00147"></a>00147
- <a name="l00148"></a>00148
- <a name="l00149"></a>00149 <span class="comment">/*=============================================================================</span>
- <a name="l00150"></a>00150 <span class="comment"></span>
- <a name="l00151"></a>00151 <span class="comment"> Decaying turbulence</span>
- <a name="l00152"></a>00152 <span class="comment"> force = 0.0; </span>
- <a name="l00153"></a>00153 <span class="comment"></span>
- <a name="l00154"></a>00154 <span class="comment">=================================================================================*/</span>
- <a name="l00155"></a>00155
- <a name="l00156"></a>00156
- <a name="l00157"></a><a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">00157</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">IncFluid::Compute_force_decay</a>()
- <a name="l00158"></a>00158 {
- <a name="l00159"></a>00159 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = 0.0;
- <a name="l00160"></a>00160 *<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0;
- <a name="l00161"></a>00161 *<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00162"></a>00162
- <a name="l00163"></a>00163 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) <a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>();
- <a name="l00164"></a>00164 }
- <a name="l00165"></a>00165
- <a name="l00166"></a><a class="code" href="classIncFluid.html#24466685c8933fdda107a4d716c36cae">00166</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">IncFluid::Compute_force_decay</a>(<a class="code" href="classIncSF.html">IncSF</a>& T)
- <a name="l00167"></a>00167 {
- <a name="l00168"></a>00168 <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">Compute_force</a>();
- <a name="l00169"></a>00169
- <a name="l00170"></a>00170 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = 0.0;
- <a name="l00171"></a>00171
- <a name="l00172"></a>00172 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) <a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>(T);
- <a name="l00173"></a>00173 }
- <a name="l00174"></a>00174
- <a name="l00175"></a><a class="code" href="classIncFluid.html#9542ae227203e78ee7838dfb87ae9281">00175</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">IncFluid::Compute_force_decay</a>(<a class="code" href="classIncVF.html">IncVF</a>& W)
- <a name="l00176"></a>00176 {
- <a name="l00177"></a>00177 <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">Compute_force</a>();
- <a name="l00178"></a>00178
- <a name="l00179"></a>00179 *W.<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = 0.0;
- <a name="l00180"></a>00180 *W.<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0;
- <a name="l00181"></a>00181 *W.<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00182"></a>00182
- <a name="l00183"></a>00183 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) <a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>(W);
- <a name="l00184"></a>00184 }
- <a name="l00185"></a>00185
- <a name="l00186"></a><a class="code" href="classIncFluid.html#be7d1092faa0bf1fa402f2f10e464153">00186</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#18abdeb2ccca346327f99c8fd81b1f1b">IncFluid::Compute_force_decay</a>(<a class="code" href="classIncVF.html">IncVF</a>& W, <a class="code" href="classIncSF.html">IncSF</a> &T)
- <a name="l00187"></a>00187 {
- <a name="l00188"></a>00188 <a class="code" href="classIncFluid.html#dc1a9fbdb5ca973f18c5b16ef6bae753">Compute_force</a>(W);
- <a name="l00189"></a>00189
- <a name="l00190"></a>00190 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = 0.0;
- <a name="l00191"></a>00191
- <a name="l00192"></a>00192 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#ea2b44d03dea059e159fc7bf56db553b">alias_switch</a> == <span class="stringliteral">"DEALIAS"</span>) <a class="code" href="classIncVF.html#6f8d2554e1cc9bed9a3c351cf0a7b5d9">Dealias_force</a>(W, T);
- <a name="l00193"></a>00193 }
- <a name="l00194"></a>00194
- <a name="l00195"></a>00195
- <a name="l00196"></a>00196
- <a name="l00197"></a>00197 <span class="comment">/*=============================================================================</span>
- <a name="l00198"></a>00198 <span class="comment"></span>
- <a name="l00199"></a>00199 <span class="comment"> Force with constant energy and helicity supply rates</span>
- <a name="l00200"></a>00200 <span class="comment"> Note: sk != +1 or -1. Maximum helicity state requires V field to be</span>
- <a name="l00201"></a>00201 <span class="comment"> maximum helical, which is zero probability state.</span>
- <a name="l00202"></a>00202 <span class="comment"></span>
- <a name="l00203"></a>00203 <span class="comment">=================================================================================*/</span>
- <a name="l00204"></a>00204
- <a name="l00205"></a>00205
- <a name="l00206"></a><a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">00206</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">IncFluid::Compute_force_const_energy_helicity_supply</a>()
- <a name="l00207"></a>00207 {
- <a name="l00208"></a>00208
- <a name="l00209"></a>00209 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> inner_radius = (*force_field_para)(1);
- <a name="l00210"></a>00210 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> outer_radius = (*force_field_para)(2);
- <a name="l00211"></a>00211 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply = (*force_field_para)(3);
- <a name="l00212"></a>00212 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> epsh_by_k_epse = (*force_field_para)(4); <span class="comment">// Hk(k)/(k*e(k))</span>
- <a name="l00213"></a>00213
- <a name="l00214"></a>00214 <span class="comment">// cout << *V1 << *V2 << *V3 << endl;</span>
- <a name="l00215"></a>00215 <span class="keywordtype">int</span> nf = <a class="code" href="universal__fn_8cc.html#eef7d1e9930fbcb3e626248fb7724e80">Get_number_modes_in_shell</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>, inner_radius, outer_radius, <a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>);
- <a name="l00216"></a>00216 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply_per_mode = energy_supply / nf;
- <a name="l00217"></a>00217
- <a name="l00218"></a>00218 <span class="keywordtype">int</span> kx_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[1]) + 1;
- <a name="l00219"></a>00219 <span class="keywordtype">int</span> ky_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[2]) + 1;
- <a name="l00220"></a>00220 <span class="keywordtype">int</span> kz_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[3]) + 1;
- <a name="l00221"></a>00221
- <a name="l00222"></a>00222 <span class="keywordtype">int</span> lx, ly, lz;
- <a name="l00223"></a>00223 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> kkmag, alpha_k, beta_k, ek, sk, temp;
- <a name="l00224"></a>00224 TinyVector<complx,3> vorticity;
- <a name="l00225"></a>00225
- <a name="l00226"></a>00226 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = 0.0; *<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0; *<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00227"></a>00227
- <a name="l00228"></a>00228 <span class="keywordtype">int</span> kx_min;
- <a name="l00229"></a>00229 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"FOUR"</span>)
- <a name="l00230"></a>00230 kx_min = -kx_max;
- <a name="l00231"></a>00231 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"SCFT"</span>)
- <a name="l00232"></a>00232 kx_min = 0;
- <a name="l00233"></a>00233
- <a name="l00234"></a>00234 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> kx = kx_min; kx <= kx_max; kx++)
- <a name="l00235"></a>00235 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> ky = -ky_max; ky <= ky_max; ky++)
- <a name="l00236"></a>00236 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> kz = 0; kz <= kz_max; kz++)
- <a name="l00237"></a>00237 {
- <a name="l00238"></a>00238 lx = <a class="code" href="universal__inline_8h.html#5dece882ac0d6ab919e7fef1e55b55de">Get_lx</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, kx, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>);
- <a name="l00239"></a>00239 ly = <a class="code" href="universal__inline_8h.html#ab6eb8a9549b5df3e5432bd1da9726be">Get_ly3D</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, ky, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>);
- <a name="l00240"></a>00240 lz = kz;
- <a name="l00241"></a>00241
- <a name="l00242"></a>00242 <span class="keywordflow">if</span> ( (lx >= 0) && (lx < <a class="code" href="basis__basicfn_8cc.html#5b280d17c0a165711d64dda77338d027">local_N1</a>) )
- <a name="l00243"></a>00243 {
- <a name="l00244"></a>00244 kkmag = <a class="code" href="universal__inline_8h.html#df8a1e8cb2ee7e271672276eb766f28f">Kmagnitude</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, lx, ly, lz, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>, <a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>);
- <a name="l00245"></a>00245 <span class="keywordflow">if</span> ((kkmag >= inner_radius) && (kkmag < outer_radius))
- <a name="l00246"></a>00246 {
- <a name="l00247"></a>00247 ek = <a class="code" href="classCVF.html#136d808dc6530c487d0a52fb986108c5">CV_Modal_energy</a>(lx, ly, lz);
- <a name="l00248"></a>00248
- <a name="l00249"></a>00249 <span class="keywordflow">if</span> (ek > <a class="code" href="basis__basicfn__inline_8h.html#41373c04f336e4cea8c3db37eea29e9f">MYEPS</a>)
- <a name="l00250"></a>00250 {
- <a name="l00251"></a>00251 temp = energy_supply_per_mode/ (2*ek);
- <a name="l00252"></a>00252 sk = <a class="code" href="classCVF.html#1d21e4c4d57845f7c6576440c1b55926">CV_Modal_helicity</a>(lx, ly, lz) / (kkmag * ek);
- <a name="l00253"></a>00253
- <a name="l00254"></a>00254 alpha_k = temp * (1-sk*epsh_by_k_epse) / (1 - sk*sk);
- <a name="l00255"></a>00255 beta_k = temp * (epsh_by_k_epse - sk) / (1 - sk*sk);
- <a name="l00256"></a>00256
- <a name="l00257"></a>00257 <a class="code" href="classCVF.html#0d53a1e7fac99381342302237975c224">CV_Modal_vorticity</a>(lx, ly, lz, vorticity);
- <a name="l00258"></a>00258 (*Force1)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#77e2105a2d7d2a35cc65987f28951841">V1</a>)(lx, ly, lz) + beta_k * vorticity(0);
- <a name="l00259"></a>00259 (*Force2)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#baeccade011a2b615777dc89f2710929">V2</a>)(lx, ly, lz) + beta_k * vorticity(1);
- <a name="l00260"></a>00260 (*Force3)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#9f69a238438f20339b5c7e05faa3d1f6">V3</a>)(lx, ly, lz) + beta_k * vorticity(2);
- <a name="l00261"></a>00261
- <a name="l00262"></a>00262 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"SCFT"</span>)
- <a name="l00263"></a>00263 (*Force1)(lx, ly, lz) = <a class="code" href="basis__basicfn__inline_8h.html#6da8bdb121d2b59aad76f9ae5e7b0bce">I</a> * (*<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a>)(lx, ly, lz);
- <a name="l00264"></a>00264 <span class="comment">// because of V1(x) = V1(k..) sin(kx*x)*exp(i ky y) </span>
- <a name="l00265"></a>00265 }
- <a name="l00266"></a>00266 }
- <a name="l00267"></a>00267 }
- <a name="l00268"></a>00268 }
- <a name="l00269"></a>00269
- <a name="l00270"></a>00270 <span class="comment">// if ( (alias_switch == "DEALIAS") && (Is_alias_array(basis_type, N, *V1, outer_radius, kfactor) == 1) )</span>
- <a name="l00271"></a>00271 <span class="comment">// Dealias_force();</span>
- <a name="l00272"></a>00272
- <a name="l00273"></a>00273 }
- <a name="l00274"></a>00274
- <a name="l00275"></a>00275
- <a name="l00276"></a>00276 <span class="comment">//</span>
- <a name="l00277"></a>00277 <span class="comment">// Scalar</span>
- <a name="l00278"></a>00278 <span class="comment">//</span>
- <a name="l00279"></a>00279
- <a name="l00280"></a><a class="code" href="classIncFluid.html#182c63853df011e0ca78abcdf36c97e6">00280</a> <span class="keywordtype">void</span> <a class="code" href="classIncFluid.html#bc1b70c0993e23bc253beb12e22cb171">IncFluid::Compute_force_const_energy_helicity_supply</a>(<a class="code" href="classIncSF.html">IncSF</a>& T)
- <a name="l00281"></a>00281 {
- <a name="l00282"></a>00282 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> inner_radius = (*force_field_para)(1);
- <a name="l00283"></a>00283 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> outer_radius = (*force_field_para)(2);
- <a name="l00284"></a>00284 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply = (*force_field_para)(3);
- <a name="l00285"></a>00285 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> epsh_by_k_epse = (*force_field_para)(4); <span class="comment">// Hk(k)/(k*e(k))</span>
- <a name="l00286"></a>00286 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply_scalar = (*force_field_para)(5);
- <a name="l00287"></a>00287
- <a name="l00288"></a>00288
- <a name="l00289"></a>00289 <span class="keywordtype">int</span> nf = <a class="code" href="universal__fn_8cc.html#eef7d1e9930fbcb3e626248fb7724e80">Get_number_modes_in_shell</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>, inner_radius, outer_radius, <a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>);
- <a name="l00290"></a>00290 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply_per_mode = energy_supply / nf;
- <a name="l00291"></a>00291 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> energy_supply_scalar_per_mode = energy_supply_scalar / nf;
- <a name="l00292"></a>00292
- <a name="l00293"></a>00293 <span class="keywordtype">int</span> kx_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[1]) + 1;
- <a name="l00294"></a>00294 <span class="keywordtype">int</span> ky_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[2]) + 1;
- <a name="l00295"></a>00295 <span class="keywordtype">int</span> kz_max = ((int) outer_radius/<a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>[3]) + 1;
- <a name="l00296"></a>00296
- <a name="l00297"></a>00297 <span class="keywordtype">int</span> lx, ly, lz;
- <a name="l00298"></a>00298 <a class="code" href="basis__basicfn__inline_8h.html#b3383e72bb58d5e6faf0501cd117acfa">DP</a> kkmag, alpha_k, beta_k, alpha_k_scalar, ek, sk, temp;
- <a name="l00299"></a>00299 TinyVector<complx,3> vorticity;
- <a name="l00300"></a>00300
- <a name="l00301"></a>00301
- <a name="l00302"></a>00302 *<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a> = 0.0; *<a class="code" href="classIncVF.html#80f54d518c56490879a060daab0b11cd">Force2</a> = 0.0; *<a class="code" href="classIncVF.html#9165c41fad6098c9798d207972ae918c">Force3</a> = 0.0;
- <a name="l00303"></a>00303 *T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a> = 0.0;
- <a name="l00304"></a>00304
- <a name="l00305"></a>00305 <span class="keywordtype">int</span> kx_min;
- <a name="l00306"></a>00306 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"FOUR"</span>)
- <a name="l00307"></a>00307 kx_min = -kx_max;
- <a name="l00308"></a>00308 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"SCFT"</span>)
- <a name="l00309"></a>00309 kx_min = 0;
- <a name="l00310"></a>00310
- <a name="l00311"></a>00311 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> kx = kx_min; kx <= kx_max; kx++)
- <a name="l00312"></a>00312 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> ky = -ky_max; ky <= ky_max; ky++)
- <a name="l00313"></a>00313 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> kz = 0; kz <= kz_max; kz++)
- <a name="l00314"></a>00314 {
- <a name="l00315"></a>00315 lx = <a class="code" href="universal__inline_8h.html#5dece882ac0d6ab919e7fef1e55b55de">Get_lx</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, kx, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>);
- <a name="l00316"></a>00316 ly = <a class="code" href="universal__inline_8h.html#ab6eb8a9549b5df3e5432bd1da9726be">Get_ly3D</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, ky, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>);
- <a name="l00317"></a>00317 lz = kz;
- <a name="l00318"></a>00318
- <a name="l00319"></a>00319 <span class="keywordflow">if</span> ( (lx >= 0) && (lx < <a class="code" href="basis__basicfn_8cc.html#5b280d17c0a165711d64dda77338d027">local_N1</a>) )
- <a name="l00320"></a>00320 {
- <a name="l00321"></a>00321 kkmag = <a class="code" href="universal__inline_8h.html#df8a1e8cb2ee7e271672276eb766f28f">Kmagnitude</a>(<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a>, lx, ly, lz, <a class="code" href="classIncVF.html#52274608af455b18d27c6e2a9c72c007">N</a>, <a class="code" href="classIncVF.html#cead0e8840176d9682256d90a339d18c">kfactor</a>);
- <a name="l00322"></a>00322 <span class="keywordflow">if</span> ((kkmag >= inner_radius) && (kkmag < outer_radius))
- <a name="l00323"></a>00323 {
- <a name="l00324"></a>00324 ek = <a class="code" href="classCVF.html#136d808dc6530c487d0a52fb986108c5">CV_Modal_energy</a>(lx, ly, lz);
- <a name="l00325"></a>00325 <span class="keywordflow">if</span> (ek > <a class="code" href="basis__basicfn__inline_8h.html#41373c04f336e4cea8c3db37eea29e9f">MYEPS</a>)
- <a name="l00326"></a>00326 {
- <a name="l00327"></a>00327 temp = energy_supply_per_mode/ (2*ek);
- <a name="l00328"></a>00328 sk = <a class="code" href="classCVF.html#1d21e4c4d57845f7c6576440c1b55926">CV_Modal_helicity</a>(lx, ly, lz) / (kkmag * ek);
- <a name="l00329"></a>00329
- <a name="l00330"></a>00330 alpha_k = temp * (1-sk*epsh_by_k_epse) / (1 - sk*sk);
- <a name="l00331"></a>00331 beta_k = temp * (epsh_by_k_epse - sk) / (1 - sk*sk);
- <a name="l00332"></a>00332
- <a name="l00333"></a>00333 <a class="code" href="classCVF.html#0d53a1e7fac99381342302237975c224">CV_Modal_vorticity</a>(lx, ly, lz, vorticity);
- <a name="l00334"></a>00334 (*Force1)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#77e2105a2d7d2a35cc65987f28951841">V1</a>)(lx, ly, lz) + beta_k * vorticity(0);
- <a name="l00335"></a>00335 (*Force2)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#baeccade011a2b615777dc89f2710929">V2</a>)(lx, ly, lz) + beta_k * vorticity(1);
- <a name="l00336"></a>00336 (*Force3)(lx, ly, lz) = alpha_k * (*<a class="code" href="classCVF.html#9f69a238438f20339b5c7e05faa3d1f6">V3</a>)(lx, ly, lz) + beta_k * vorticity(2);
- <a name="l00337"></a>00337
- <a name="l00338"></a>00338 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"SCFT"</span>)
- <a name="l00339"></a>00339 (*Force1)(lx, ly, lz) = <a class="code" href="basis__basicfn__inline_8h.html#6da8bdb121d2b59aad76f9ae5e7b0bce">I</a> * (*<a class="code" href="classIncVF.html#e5fe0abba839d872aa2250b165953fb4">Force1</a>)(lx, ly, lz);
- <a name="l00340"></a>00340 <span class="comment">// because of V1(x) = V1(k..) sin(kx*x)*exp(i ky y)</span>
- <a name="l00341"></a>00341 }
- <a name="l00342"></a>00342
- <a name="l00343"></a>00343 <span class="keywordflow">if</span> (T.<a class="code" href="classCSF.html#21476eeacc281417c6ee958f87c41250">CS_Modal_energy</a>(lx, ly, lz) > <a class="code" href="basis__basicfn__inline_8h.html#41373c04f336e4cea8c3db37eea29e9f">MYEPS</a>)
- <a name="l00344"></a>00344 {
- <a name="l00345"></a>00345 alpha_k_scalar = energy_supply_scalar_per_mode / T.<a class="code" href="classCSF.html#21476eeacc281417c6ee958f87c41250">CS_Modal_energy</a>(lx, ly, lz);
- <a name="l00346"></a>00346 (*T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a>)(lx, ly, lz) = alpha_k_scalar * (*T.<a class="code" href="classCSF.html#3b75b0fe8368d57759f1a67a050e6367">F</a>)(lx, ly, lz);
- <a name="l00347"></a>00347
- <a name="l00348"></a>00348 <span class="keywordflow">if</span> (<a class="code" href="classIncVF.html#e8078b9a5c1dfbd111f91dd31560983c">basis_type</a> == <span class="stringliteral">"SCFT"</span>)
- <a name="l00349"></a>00349 (*T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a>)(lx, ly, lz) = <a class="code" href="basis__basicfn__inline_8h.html#6da8bdb121d2b59aad76f9ae5e7b0bce">I</a> * (*T.<a class="code" href="classIncSF.html#024757d3273e5cb1e89b3bad3b0fa336">Force</a>)(lx, ly, lz);
- <a name="l00350"></a>00350 }
- <a name="l00351"></a>00351 }
- <a name="l00352"></a>00352 }
- <a name="l00353"></a>00353 }
- <a name="l00354"></a>00354
- <a name="l00355"></a>00355 <span class="comment">// if ( (alias_switch == "DEALIAS") && (Is_alias_array(basis_type, N, *V1, outer_radius, kfactor) == 1) )</span>
- <a name="l00356"></a>00356 <span class="commen…
Large files files are truncated, but you can click here to view the full file