Dear all,
I am trying to develop a function in the CompressibleFlowSolver defined as

    void CompressibleFlowSystem::SmoothingFieldGlobal(
        const  Array<OneD,             NekDouble  > &var,
        Array<OneD,             NekDouble  > &var_smooth)

The basic process in this function is that 
1. First the original field vaule var is projected onto a basis with lower accuracy orders;
2. Averaging is conducted for points along element edges to achieve C0 continuity;
3. Project modified values back to the original basis to obtain var_smooth.

Through the above procedures, the specified field value is smoothed to some extent.

Has anyone done similar work before or does Nektar++ already contains similar functions?
Right now I am not sure where to start.I noticed that there is a C0Projection module in the FieldConvert modules. Is it feasible to transplant this module? Any suggestion would be a big help!
Thank you!
Best wishes,
Jian Yu