Seyed,
But it doesn't work when we don't know what you want to do :-)
> The computation of configurational forces is accomplished by the
> following formula:
>
>
> <
https://lh3.googleusercontent.com/-B38RUw135-c/WIjDUOvqsfI/AAAAAAAAAEI/4rD24zbgMeoI9O-2MFpXt77UTbGAHjmLQCLcB/s1600/config_forces.png>
>
>
> Deal.II does not attempt to be the beginning and end of provided
> functionality. Yes, there are times when deal.II does not provide
> some functionality that you require. There are a zoo of other
> libraries that you could also use to extend your code and fill in
> the gaps that deal.II does not provide. Of course, we always welcome
> extensions to existing features (e.g the relatively
> new CellDataStorage class
> <
https://www.dealii.org/developer/doxygen/deal.II/classCellDataStorage.html> and TransferableQuadraturePointData
> class
> <
https://www.dealii.org/developer/doxygen/deal.II/classTransferableQuadraturePointData.html>)
> or the addition of new ones.
>
>
> How can I use these new features? Is there a step example or tutorial?
> Is this TransferableQuadraturePointData the same like in step-18?
>
> Is this a deal.II error or a user error? Have you repopulate
> the local_dof_indices vector for each new cell that you're doing
> this "assembly" on? It looks like all contributions are going to a
> fixed set of global DoFs.
>
>
> I think more of a user error. Deal.II is nice and very elegantly
> designed. I just don't think it will automatically assemble it correctly
> in this case. First I have to understand it, before telling the program. ;)
Having read through this thread, I think that you are stuck because you
are familiar with one code and the corresponding notation, and you
expect that deal.II uses the same notation and does the same thing. So
you try to do in deal.II what you do there, but you can't find the same
terminology, the same functions, etc.
As an example:
> I just did this:
>
> |
> std::vector<types::global_dof_index>local_dof_indices(dofs_per_cell);
>
> typenameDoFHandler<dim>::active_cell_iterator cell
> =dof_handler.begin_active(),endc =dof_handler.end();
> for(;cell !=endc;++cell)
> {
> if(cell->is_locally_owned())
> {
> fe_values.reinit(cell);
>
> ...configurational forces computation ...
>
> }
>
> configurational_forces =cell_cf;
We don't know what "configurational forces" are. Or what, in your
formula, the various terms are.
I think that the only way to make progress is if you write down the
mathematics you want to implement, and then compare it with what the
various tutorial programs do. For example, for integrating the local
right hand side you may want to see steps 3 and 4, as well as 8. For how
exactly this interacts with hanging nodes, you may want to see step-6.
The point is that you need to expect to see similar mathematics, but
different terms than you are used to.