First step towards Neumann / flux boundary conditions.
Currently only works and CPUs and scalar fields.
Selected via n= 'value' in the JSON, similar to the approach for Dirichlet bcs.
The scalar_mms is updated to use a Neumann bc consistent with the desired solution, and it seems to work well. Clearly shows errors if one sets the incorrect flux as well.
Not sure if it works when the axes are not aligned with the faces, due to the following statement in the Nek5000 docs regarding scalar bcs. "If the normal, tangent, and bitangent vectors are not aligned with the mesh the stress formulation has to be used." I don't see why this is the case for the scalar, though.
There a couple of questions regarding the implementation of bcs in the scalar types, which I would like to clear up in this PR review as well, I will leave some comments below for threaded discussions.
First step towards Neumann / flux boundary conditions.
n= 'value'
in the JSON, similar to the approach for Dirichlet bcs.Not sure if it works when the axes are not aligned with the faces, due to the following statement in the Nek5000 docs regarding scalar bcs. "If the normal, tangent, and bitangent vectors are not aligned with the mesh the stress formulation has to be used." I don't see why this is the case for the scalar, though.
There a couple of questions regarding the implementation of bcs in the scalar types, which I would like to clear up in this PR review as well, I will leave some comments below for threaded discussions.