Help with spatially-varying sourcing function.
******************* This email originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list https://spam.ic.ac.uk/SpamConsole/Senders.aspx to disable email stamping for this address. ******************* Dear community, I've set up a convection problem in the incompressible Navier-Stokes solver. I have an equation for the time-evolution of the temperature to which I would like to add a right-hand-side describing sources of local heating. Can I do this in Nektar++? I have tried implementing it via the bodyforce, however this seems to apply a spatially-uniform source and I want something like the Gaussian profile below. I am trying: <FUNCTION NAME="BodyForce"> <E VAR="u" VALUE="Gr*T" EVARS="u v T p" /> <E VAR="v" VALUE="0" EVARS="u v T p" /> <E VAR="T" VALUE="(1e10)*exp(-((x+0.25)^2+y^2)/(0.05^2))" EVARS="u v T p x y" /> </FUNCTION> then <FORCING> <FORCE TYPE="Body"> <BODYFORCE> BodyForce </BODYFORCE> </FORCE> </FORCING> Can anyone help, please? Thanks! Ed.
Hi Ed, Sorry for the delayed response. Could you try removing EVAR="u v T p x y" from the forcing function only for T, for instance. <E VAR="u" VALUE="Gr*T" EVARS="u v T p" /> <E VAR="v" VALUE="0" EVARS="u v T p" /> <E VAR="T" VALUE="(1e10)*exp(-((x+0.25)^2+y^2)/(0.05^2))"/> The reason is because whenever EVAR (equation variables) is explicitly labelled, the forcing function look up the equation variables (u v T p) for the forcing values but not the space/time variables (x y t). Hope this helps! Cheers, Chi Hin ________________________________ From: nektar-users-bounces@imperial.ac.uk <nektar-users-bounces@imperial.ac.uk> on behalf of Edward Threlfall <ejthrelfall@gmail.com> Sent: 18 January 2023 16:35 To: nektar-users <nektar-users@imperial.ac.uk> Subject: [Nektar-users] Help with spatially-varying sourcing function. This email from ejthrelfall@gmail.com originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list<https://spam.ic.ac.uk/SpamConsole/Senders.aspx> to disable email stamping for this address. Dear community, I've set up a convection problem in the incompressible Navier-Stokes solver. I have an equation for the time-evolution of the temperature to which I would like to add a right-hand-side describing sources of local heating. Can I do this in Nektar++? I have tried implementing it via the bodyforce, however this seems to apply a spatially-uniform source and I want something like the Gaussian profile below. I am trying: <FUNCTION NAME="BodyForce"> <E VAR="u" VALUE="Gr*T" EVARS="u v T p" /> <E VAR="v" VALUE="0" EVARS="u v T p" /> <E VAR="T" VALUE="(1e10)*exp(-((x+0.25)^2+y^2)/(0.05^2))" EVARS="u v T p x y" /> </FUNCTION> then <FORCING> <FORCE TYPE="Body"> <BODYFORCE> BodyForce </BODYFORCE> </FORCE> </FORCING> Can anyone help, please? Thanks! Ed.
Hi Chi Hin, Thanks for the advice - I've tried as you suggested and it seems to work just fine. Great community support, many thanks! Ed. On Fri, Jan 27, 2023 at 7:57 PM Chan, Chi Hin <chi.chan19@imperial.ac.uk> wrote:
Hi Ed,
Sorry for the delayed response. Could you try removing EVAR="u v T p x y" from the forcing function only for T, for instance.
* <E VAR="u" VALUE="Gr*T" EVARS="u v T p" /> *
* <E VAR="v" VALUE="0" EVARS="u v T p" /> * * <E VAR="T" VALUE="(1e10)*exp(-((x+0.25)^2+y^2)/(0.05^2))"/> *
The reason is because whenever EVAR (equation variables) is explicitly labelled, the forcing function look up the equation variables (u v T p) for the forcing values but not the space/time variables (x y t).
Hope this helps!
Cheers, Chi Hin
------------------------------ *From:* nektar-users-bounces@imperial.ac.uk < nektar-users-bounces@imperial.ac.uk> on behalf of Edward Threlfall < ejthrelfall@gmail.com> *Sent:* 18 January 2023 16:35 *To:* nektar-users <nektar-users@imperial.ac.uk> *Subject:* [Nektar-users] Help with spatially-varying sourcing function.
This email from ejthrelfall@gmail.com originates from outside Imperial. Do not click on links and attachments unless you recognise the sender. If you trust the sender, add them to your safe senders list <https://spam.ic.ac.uk/SpamConsole/Senders.aspx> to disable email stamping for this address.
Dear community,
I've set up a convection problem in the incompressible Navier-Stokes solver.
I have an equation for the time-evolution of the temperature to which I would like to add a right-hand-side describing sources of local heating.
Can I do this in Nektar++? I have tried implementing it via the bodyforce, however this seems to apply a spatially-uniform source and I want something like the Gaussian profile below.
I am trying:
<FUNCTION NAME="BodyForce"> <E VAR="u" VALUE="Gr*T" EVARS="u v T p" /> <E VAR="v" VALUE="0" EVARS="u v T p" /> <E VAR="T" VALUE="(1e10)*exp(-((x+0.25)^2+y^2)/(0.05^2))" EVARS="u v T p x y" /> </FUNCTION>
then
<FORCING> <FORCE TYPE="Body"> <BODYFORCE> BodyForce </BODYFORCE> </FORCE> </FORCING>
Can anyone help, please?
Thanks!
Ed.
participants (2)
- 
                
                Chan, Chi Hin
- 
                
                Edward Threlfall