Hi Spencer, Thank you for the quick reply. ExpList::SmoothField is exactly the same as callinf FwdTrans and bwdTrans, which is what the FieldCovert module does, too. Finding out what that caused these strange patterns took me a while, but i figured it out at last. It was a bug in my code, SmoothField as well as the method you suggested work fine! Cheers, Kilian Am Donnerstag, 21. Januar 2016, 14:42:39 schrieb Sherwin, Spencer J:
Hi Killian,
I do not recall what smooth field does. I think the method may only be suitable for nodal quads.
To make a C0 projection you should use Fwdtrans and then Bwdtrans. Actually there is a module to do this in fieldconvert so you might wish to look at that too?
We have also been doing a similar interpolation on other projects. In a branch we have a method to import points at quadrature spacing and then create a .fld file. When we next get a chance we discuss this further.
Cheers Spencer
Sent from my iPhone
On 21 Jan 2016, at 13:50, Kilian Lackhove <lackhove@ekt.tu-darmstadt.de> wrote:
Dear all,
I want to create a C0-continuous field from interpolated input data. The input field is obtained from a FVM code and was filtered with a gaussian in space and interpolated to the quadrature points. I store the field in a ContField2D
m_bf = Array<OneD, MultiRegions::ExpListSharedPtr>(m_spacedim + 2); m_bf[i] = MemoryManager<MultiRegions::ContField2D>::AllocateSharedPtr(m_session, m_graph);
copy the interpolated data into its m_phys array
Vmath::Vcopy(nq, filteredField[i], 1, m_bf[i]->UpdatePhys(), 1);
and then try to smooth the field. Until now, i just did:
m_bf[i]->IProductWRTBase(m_bf[i]->GetPhys(), m_bf[i]->UpdateCoeffs()); m_bf[i]->MultiplyByElmtInvMass(m_bf[i]->GetCoeffs(), m_bf[i]->UpdateCoeffs()); m_bf[i]->BwdTrans(m_bf[i]->GetCoeffs(), m_bf[i]->UpdatePhys());
which yields the field depicted in DG.png. However, this does not ensure C0- continuity, so i tried to call ExpList::SmoothField afterward:
m_bf[i]->SmoothField(m_bf[i]->UpdatePhys());
However, this produces a distorted field as shown in smoothed.png.
I am using a 6th order modified expansion basis: <E COMPOSITE="C[10]" NUMMODES="6" FIELDS="p,u,v,w" TYPE="MODIFIED"/>
and the mesh is depicted in smoothed_mesh.png.
What is the cause of this problem and what can i do do fix it?
Cheers,
Kilian -- Kilian Lackhove, M.Sc. Fachgebiet für Energie- und Kraftwerkstechnik L1|08 114 Technische Universität Darmstadt Jovanka-Bontschits-Straße 2 D-64287 Darmstadt Germany
Tel.: +49 6151 16 - 28915 Fax: +49 6151 16 - 6555 e-mail: lackhove@ekt.tu-darmstadt.de