<div dir="ltr"><div class="gmail_default" style="font-size:small">Hello All,</div><div class="gmail_default" style="font-size:small">Thank you Aleks for your reply. </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I removed <div class="gmail_default" style="display:inline">​</div>if(ifield.eq.1) and <div class="gmail_default" style="display:inline">​</div>elseif(ifield.eq.ifldmhd) from uservp and did some more testing by setting p30>0 in the rea file<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Now my uservp contains one of the below cases</div><div class="gmail_default" style="font-size:small"><span style="white-space:pre">Case1:</span><br></div><div class="gmail_default"><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">    </span>utrans = param(1)</div><div class="gmail_default" style="font-size:small">        R1 = sqrt(x*x+y*y); </div><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>if(R1 .le. 2.0) then</div><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">         </span>udiff= param(29)</div><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">     </span>else</div><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">         </span>udiff= 5.0D0*param(29)</div><div class="gmail_default" style="font-size:small"><span class="gmail-Apple-tab-span" style="white-space:pre">       </span>endif</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">OR</div><div class="gmail_default" style="font-size:small">Case 2:</div><div class="gmail_default"><div class="gmail_default">        alpha=10.0D0</div><div class="gmail_default">        one   = 1.</div><div class="gmail_default">        pi    = 4.*atan(one)</div><div class="gmail_default">        Rc = 6.7D0</div><div class="gmail_default"><br></div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">     </span>utrans = param(1)</div><div class="gmail_default">        R1 = sqrt(x*x+y*y); </div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">      </span>if(R1 .le. 2.0) then</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">        </span>udiff= param(29)</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">  </span>elseif(R1.gt.2.0 .and. R1.le.6.7) then</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">    </span>  sf=sin((R1-2.0D0)/(Rc-2.0D0)*pi/2.0D0)</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">       </span> udiff= param(29)+(alpha-1.0D0)*param(29)*sf</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">      </span> else </div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">       </span> udiff= alpha*param(29)</div><div class="gmail_default"><span class="gmail-Apple-tab-span" style="white-space:pre">        e</span>ndif</div><div style="font-size:small"><br></div></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">When I run the code I DONOT get an error for both the above cases and the evolution of magnetic field is different from the case of uniform properties.</div><div class="gmail_default" style="font-size:small">I am solving a kinematic dynamo so I impose velocity field in the userchk, and velocity field is not affected by the change in viscosity.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">My questions are whether am I getting correct solution or not for uservp MHD?</div><div class="gmail_default" style="font-size:small">1) If I do the above in the uservp, is the code changing the magnetic diffusivity at the desired location?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">2) When the magnetic diffusivity is varying with space then there is an additional term in the B eqs, i.e., (curl B) x grad(eta), does nek5000 take into account this additional term.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">In short, what I'm looking for is, our fluid domain (eta1) is surrounded by an external domain (eta2), where the magnetic diffusivity eta2=10 or 100*eta1. The change in viscosity doesn't matter because the velocity field is forced to zero in the outer domain.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Thanks in advance.<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Yours sincerely,</div><div class="gmail_default" style="font-size:small">Sandeep</div><div class="gmail_default" style="font-size:small"><br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
Hi Sandeep,<br>
<br>
The MHD implementation in Nek5000 works only for constant properties so far but it is possible to generalize it to a case with ifuservp=.true.  Let me know if you want to discuss this offline: <a href="mailto:obabko@mcs.anl.gov">obabko@mcs.anl.gov</a><br>
<br>
Aleks<br>
______________________________<wbr>__<br>
From: <a href="mailto:nek5000-users-bounces@lists.mcs.anl.gov">nek5000-users-bounces@lists.<wbr>mcs.anl.gov</a> [<a href="mailto:nek5000-users-bounces@lists.mcs.anl.gov">nek5000-users-bounces@lists.<wbr>mcs.anl.gov</a>] on behalf of <a href="mailto:nek5000-users@lists.mcs.anl.gov">nek5000-users@lists.mcs.anl.<wbr>gov</a> [<a href="mailto:nek5000-users@lists.mcs.anl.gov">nek5000-users@lists.mcs.anl.<wbr>gov</a>]<br>
Sent: Thursday, December 01, 2016 11:31 AM<br>
To: <a href="mailto:nek5000-users@lists.mcs.anl.gov">nek5000-users@lists.mcs.anl.<wbr>gov</a><br>
Subject: [Nek5000-users] uservp MHD error<br>
<br>
Hello All,<br>
<br>
I want to run MHD case with different magnetic diffusivities in different region of the domain.<br>
Can we run MHD run with different magnetic diffusivities?<br>
Assuming that udiff=magnetic diffusivity (eta), in the uservp file I added the following<br>
<br>
      1.0000000E+00     p30 > 0 ==> properties set in uservp()<br>
<br>
      subroutine uservp (ix,iy,iz,ieg)<br>
      include 'SIZE'<br>
      include 'TOTAL'<br>
      include 'NEKUSE'<br>
<br><div class="gmail_default" style="font-size:small;display:inline">​​</div>if (ifield.eq.1) then ! velocity<br>
<div class="gmail_default" style="font-size:small;display:inline">​   ​</div>utrans = param(1)<br>
<div class="gmail_default" style="font-size:small;display:inline">​   ​</div>udiff  = param(2)<br><div class="gmail_default" style="font-size:small;display:inline">​​</div>elseif (ifield.eq.ifldmhd) then ! B-field </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_default" style="font-size:small;display:inline">   ​​</div>utrans = 1.0<br>   <div class="gmail_default" style="font-size:small;display:inline">​</div> R1 = sqrt(x*x+y*y);<br>
<div class="gmail_default" style="font-size:small;display:inline">​    ​i</div><div class="gmail_default" style="font-size:small;display:inline">​</div><div class="gmail_default" style="font-size:small;display:inline">​</div>f(R1 .le. 2.0) then<br>
<div class="gmail_default" style="font-size:small;display:inline">​        ​</div>udiff= param(29)<br>
<div class="gmail_default" style="font-size:small;display:inline">​    ​</div>else<br>
<div class="gmail_default" style="font-size:small;display:inline">​        ​</div>udiff= 1000.0D0*param(29)<br>
<div class="gmail_default" style="font-size:small;display:inline">​    ​</div>endif<br>endif<br>return<br>end<br>
<br>
I get an error<br>
<br>
 done :: set initial conditions<br>
<br>
  ERROR:  Non-positive diffusivity (    0.00    ) specified for field 2, group 0 element<br>
  ERROR:  Non-positive diffusivity (    0.00    ) specified for field 2, group 0 element<br>
<br>
Attached are the .usr, .rea and the logfile<br>
<br>
When I set the p30=0.000 and just utrans=0.0 udiff=0.0 in the uservp, the simulation is running fine.<br>
Thank you in advance.<br>
<br>
Cheers,<br>
Sandeep<br>
<br>
<br><br></blockquote></div></div></div>