Hi  Denis,
Thank you for answering my (odd) questions...

I think I meant that I do not see how I could pass a point that is calculated 
during assembly when constructing the enrichments functions. So to pass the 
point during assembly I think I need to get to the enrichment functions that 
are already in the “enrichments” vector,  and this is a protected  member of 
the FE_Enriched class … so I was thinking to make it public…  maybe you have a 
different suggestion...

I want to do this to try a couple of things..

* I want to test a function like this : Cos ( z) with  z=sqrt ( (x-xo)^2 + 
(y-yo)^2), where  (xo, yo) is the point I need to pass..

* I would like to implement the  kronecker delta property: f(x)-f(xi) where xi 
is the coordinate of the dof


 and I was also thinking that I would probably need to work with DG methods. 
But I can try the 1D test you suggested first to find out the continuity of my 
functions

Thank you for your help.

Edith


> On Nov 2, 2017, at 1:49 AM, Denis Davydov <davyd...@gmail.com> wrote:
> 
> 
> 
> 2 нояб. 2017 г., в 2:50, Edith Sotelo <esot...@tamu.edu 
> <mailto:esot...@tamu.edu>> написал(а):
> 
>> Hi Denis,
>> Thank you for your answer but I still need to further understand some things 
>> :  
>> * I think I need to pass the point (xo) during assembly since it will 
>> different for different cells ( dof coordinate or center of the cell), 
> 
> Unless you work with discontinuous Galerkin, then you need to be careful with 
> how you use PUM.
> 
> If you take a global view of the shape functions and enrich each of them with 
> a a given function, it will be extremely tedious to pull of. 
> 
> I don’t know what you are trying to do, but I suggest to draw a 1D sketch 
> with a global view to linear shape-functions and the enriched functions 
> (shape functions times enrichments), try to number them and see what 
> constraints you should have on DoFs to make your FE space continuous.
> 
>> and I do not see how I can pass the point when declaring the function (ex. 
>> Enrichment <dim> (param1,param2, etc...) ) to create 
> 
> See below
> 
>> the  FE_Enriched constructor, maybe I am missing something here.
>> 
>> *  The thing is that  during assembly the functions are already encapsulated 
>>  in the “enrichments” vector and if I even  create a member function like 
>> Enrichment<dim>::get_point(Point<dim> & ) how do I apply it to the functions 
>> that are already in the “enrichments” vector ? Maybe I can make  the 
>> “enrichments” vector  public?...
> 
> Writing out of head (there could be typos): 
> 
> template <int dim>
> class MyFavoriteEnrichment : public dealii::Function<dim >
> {
> public:
>    MyFavoriteEnrichment(const Point<dim> &x0);
> 
> }
> 
> is what u need.
> Look at implementation of any dealii’s functions.
> 
>> 
>> Thank you for your help
>> 
>> Edith
>> 
>> 
>> 
>>> On Nov 1, 2017, at 5:29 PM, Denis Davydov <davyd...@gmail.com 
>>> <mailto:davyd...@gmail.com>> wrote:
>>> 
>>> Hi Edith,
>>> 
>>> f(x-x0) is just your enrichment function derived from dealii::Function. So 
>>> define a class which takes that extra parameter (or any number of them) and 
>>> use it with FE_Enriched.
>>> Assuming that your bilinear form needs gradients, then you would need to 
>>> implement gradients of your custom function so that FE_Enriched can work 
>>> out chain rule for you.
>>> 
>>> Cheers,
>>> Denis.
>>> 
>>> On Wednesday, November 1, 2017 at 5:27:10 AM UTC+1, Edith Sotelo wrote:
>>> Hello,
>>> 
>>> I would like to implement enrichment functions of this type: f(x-xo) where 
>>> xo is a user defined point. It could be the center of the cell or the dof 
>>> coordinate.
>>> I would like a suggestion about how to implement this, because I do not see 
>>> how to pass it in the constructor since it is not a static point.I think it 
>>> has to be  during the assembly step, but FE_values call the enrich function 
>>> with a single argument (the quadrature point). 
>>> What sould be a way to do pass the addtional point?
>>> 
>>> Thank you for you help.
>>> 
>>> 
>>> -- 
>>> The deal.II project is located at http://www.dealii.org/ 
>>> <http://www.dealii.org/>
>>> For mailing list/forum options, see 
>>> https://groups.google.com/d/forum/dealii?hl=en 
>>> <https://groups.google.com/d/forum/dealii?hl=en>
>>> --- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "deal.II User Group" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe 
>>> <https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe>.
>>> To unsubscribe from this group and all its topics, send an email to 
>>> dealii+unsubscr...@googlegroups.com 
>>> <mailto:dealii+unsubscr...@googlegroups.com>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <https://groups.google.com/d/optout>.
>> 
>> Edith
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> -- 
>> The deal.II project is located at http://www.dealii.org/ 
>> <http://www.dealii.org/>
>> For mailing list/forum options, see 
>> https://groups.google.com/d/forum/dealii?hl=en 
>> <https://groups.google.com/d/forum/dealii?hl=en>
>> --- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "deal.II User Group" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe 
>> <https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe>.
>> To unsubscribe from this group and all its topics, send an email to 
>> dealii+unsubscr...@googlegroups.com 
>> <mailto:dealii+unsubscr...@googlegroups.com>.
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
> 
> -- 
> The deal.II project is located at http://www.dealii.org/ 
> <http://www.dealii.org/>
> For mailing list/forum options, see 
> https://groups.google.com/d/forum/dealii?hl=en 
> <https://groups.google.com/d/forum/dealii?hl=en>
> --- 
> You received this message because you are subscribed to a topic in the Google 
> Groups "deal.II User Group" group.
> To unsubscribe from this topic, visit 
> https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe 
> <https://groups.google.com/d/topic/dealii/fFbITWIMW5M/unsubscribe>.
> To unsubscribe from this group and all its topics, send an email to 
> dealii+unsubscr...@googlegroups.com 
> <mailto:dealii+unsubscr...@googlegroups.com>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

Edith







-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to