Function in pyfr

I know square root is sqrt(). Can I use function such like triple root in ini. file? I use pow(x, 1/3), it is wrong.



pow(x, 1/3) is fine and I assure you that it works.

Regards, Freddie.

Yes, pow(x,1/3) is fine, but when I use pow(pow(x,1/3), 1/2) in integrate plugin, the result is Nah…

Also, I want to use temperature T in integrate plugin, is it possible?


pow(pow(x, 1/3), 1/2) will work fine also, but will of course deliver a NaN if x < 0. You can also simplify the two pow calls into a single expression.

The temperature can be computed through the ideal gas law.

Regards, Freddie.


I missed something. I need to set the mu as mu=kT at every soultion point and flux point, k is constant, T is temperature at the solution point or flux point.

Is it possible?


Yep, you will need to change how mu is set in the viscous flux function here: PyFR/flux.mako at d175beccd3fc5587903cc00c0f401041ff22abe4 · PyFR/PyFR · GitHub

To pass the constant k to the function, you can define it in the constants section of the ini file and then use it from the dictionary c in the mako file i.e. mu_c = ${c['k']}*T. Where you will need to define the temperature as well.

Thanks for your replay.
Can Pyfr simulate 2D linear convection-diffusion equation?
such as :


No, however you should be able to add a solver into PyFR for solving this problem without too much issue.

Regards, Freddie.

I implemented most of what you need on a slightly older version of PyFR. GitHub - WillTrojak/PyFR at feature/lin_advection

ok, thanks.

I add the [solver-source-term] which consists of trigonometric functions, and the error:

Do you know what happened?


Can you show what you put in the ini file?

Thanks, I missed the something.