Tensor Product Space and HCurl/HDiv

More
6 years 10 months ago #1205 by joachim
Hi,

I did a quick debug of your problem:

The tensor-product Set assumes scalar finite elements (in tpintrule.hpp, line 155). It should be rewritten using the Evaluators of the component spaces.

Gerhard may help here.

Don't worry, also the HCurl and HDiv - spaces have GetFE - functions.

Btw, your tensor-product space is vector valued, so it does not make sense to set a function to the scalar function x.

Joachim
More
6 years 10 months ago #1206 by jhauser
Thank you very much for the quick reply!

So it would be best to distinguish between the finite element spaces and use for HCurl the BaseHCurlFiniteElement in line 155 and 156 of tpintrule.hpp? Would you use HDivFiniteElement in the HDiv Case? (However I didn't find the implementation of "CalcShape" for HDivFiniteElement in hdivfe.cpp. Only for FE_RTTrig0, FE_BDMTrigl and so on.)

Thank you for the remark. I assumed falsely that it would be projected to a vector valued function. (I got a bit confused with the gradx/grady naming of the gradiant of the tensor product space.)
More
6 years 10 months ago #1208 by gerhard
Hi jhauser,

It should be possible now, to construct an H1 times HDiv ( and H1 times HCurl) and to set gridfunctions in that space to a given coefficient function. I changed tthe code from your post to give you a first example.

Since one of your spaces is called fest, I expect that you have space-time applications in mind? Because currently we only support operator application for BilinearForms defined in TensorProductFESpace, no system matrix can yet be assembled. ( Since it was intended for DG operator application initially, so mainly a historical reason).

Additionally I'm not sure, if vectorial spaces are treated correctly when applying your BilinearForm.

However, I think most of the above mentioned things an be solved.

Gerhard
More
6 years 10 months ago #1209 by gerhard
Sorry, I forgot to give you an example code also. Here it is...

File Attachment:

File Name: SetExample.py
File Size:1 KB
Attachments:
More
6 years 10 months ago #1212 by jhauser
I updated my ngsolve version yesterday and today. However your example still crashes with the ".Set". The two lines in tpintrule.hpp (155&156) haven't changed as well.

Yes, space-time is the goal. But i knew that there will be work before things run smoothly. There isn't a software yet which is open source for space-time with HCurl/HDiv. (At least as far as I know) Which is why I am trying to get things running with NGSolve.
Is there anything I should keep in mind before I tackle the problem of the BilinearForm?
More
6 years 10 months ago #1213 by gerhard
Hi again, sorry for the delay, the changes were merged some minutes ago.
The two lines in tpintrule haven't change at all, but the function "CalcShape" isn't called anymore.
The changes are in tpfes.cpp in the functions TransferToTPMesh and TransferToStdMesh.
Should run now.
Time to create page: 0.137 seconds