[deal.II] deal.II Newsletter #228

2022-10-05 Thread 'Rene Gassmoeller' via deal.II User Group
Hello everyone!

This is deal.II newsletter #228.
It automatically reports recently merged features and discussions about the 
deal.II finite element library.


## Below you find a list of recently proposed or merged features:

#14339: Fix some doxygen problems. (proposed by bangerth) 
https://github.com/dealii/dealii/pull/14339

#14337: [WIP] Allow filling RPE from outside (proposed by jh66637) 
https://github.com/dealii/dealii/pull/14337

#14336: Correct a date in a file name in the changelog. (proposed by bangerth; 
merged) https://github.com/dealii/dealii/pull/14336

#14335: Run doxygen with threads. (proposed by bangerth; merged) 
https://github.com/dealii/dealii/pull/14335

#14334: Fix a  type list. (proposed by bangerth; merged) 
https://github.com/dealii/dealii/pull/14334

#14332: Add NOX wrapper (proposed by peterrum) 
https://github.com/dealii/dealii/pull/14332

#14331: TensorProductMatrixSymmetricSumCollection: allow to disable compression 
(proposed by peterrum) https://github.com/dealii/dealii/pull/14331

#14330: Implement some memory_consumption() functions (proposed by peterrum) 
https://github.com/dealii/dealii/pull/14330

#14329: Use std::all_of (proposed by peterrum; merged) 
https://github.com/dealii/dealii/pull/14329

#14328: Global coarsening: introduce embedded partitioner (proposed by 
peterrum) https://github.com/dealii/dealii/pull/14328

#14327: [WIP] Precompute inverse diagonal (FDM) (proposed by peterrum) 
https://github.com/dealii/dealii/pull/14327

#14326: Fix messages about cgal versions (proposed by fdrmrc; merged) 
https://github.com/dealii/dealii/pull/14326

#14325: Update required cgal version for intersection routines (proposed by 
fdrmrc; merged) https://github.com/dealii/dealii/pull/14325

#14324: MatrixFree: Store indices of Dirichlet constrained DoFs as `-1` 
(proposed by kronbichler) https://github.com/dealii/dealii/pull/14324

#14323: GridTools::MarchingCubeAlgorithm: merge duplicate vertices in process() 
(proposed by mschreter) https://github.com/dealii/dealii/pull/14323

#14317: Create compute_weights_fe_q_dofs_by_entity() (proposed by peterrum; 
merged) https://github.com/dealii/dealii/pull/14317

#14316: Add TensorProductMatrixCreator namespace (proposed by peterrum; merged) 
https://github.com/dealii/dealii/pull/14316

#14315: FEEvaluation::submit_xxx(): Create some local copies to reduce 
potential aliasing (proposed by kronbichler; merged) 
https://github.com/dealii/dealii/pull/14315

#14314: Reduce organizational overhead/pointer chasing in FEEvaluation/read 
(proposed by kronbichler; merged) https://github.com/dealii/dealii/pull/14314

#14305: GridTools::MarchingCubeAlgorithm: add 1d implementation (proposed by 
mschreter; merged) https://github.com/dealii/dealii/pull/14305

#14304: Remove SparsityPatternBase, for now. (proposed by drwells; merged) 
https://github.com/dealii/dealii/pull/14304


## And this is a list of recently opened or closed discussions:

#14338: Generalized interface to collect CGAL intersections (opened) 
https://github.com/dealii/dealii/issues/14338

#14333: MatrixFree with different quadratures for each row leads to an 
exception while FEEvaluation::evaluate (opened and closed) 
https://github.com/dealii/dealii/issues/14333

#14322: Compilation failure with CGAL <5.5 when compiling with clang (opened 
and closed) https://github.com/dealii/dealii/issues/14322


A list of all major changes since the last release can be found at 
https://www.dealii.org/developer/doxygen/deal.II/recent_changes.html.


Thanks for being part of the community!


Let us know about questions, problems, bugs or just share your experience by 
writing to dealii@googlegroups.com, or by opening issues or pull requests at 
https://www.github.com/dealii/dealii.
Additional information can be found at https://www.dealii.org/.

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/633daa14.050a0220.d5726.5194SMTPIN_ADDED_MISSING%40gmr-mx.google.com.


Re: [deal.II] Re: Python Binding

2022-10-05 Thread Bruno Turcksin
Felix,

Glad to hear it is working and thank you for letting us know.

Best,

Bruno

Le mer. 5 oct. 2022 à 11:17, Felix Felix  a écrit :

> Hi
>
> Thank you Bruno for your help I have resolved the issue, it turns out I
> had many problems throughout the installations with my directories.
> I reinstalled and reconfigured everything and it has now worked smoothly.
> On Tuesday, September 13, 2022 at 3:11:46 PM UTC+2 bruno.t...@gmail.com
> wrote:
>
>> Felix,
>>
>> You need to use the path where you have installed the library. It looks
>> like you have compiled the library but not installed it. The PYTHONPATH you
>> want to use is /home/felixelf/Deal.II/build/python3.10/site-packages (I
>> don't remember if site-packages should be in the path or not)
>>
>> Best,
>>
>> Bruno
>>
>> Le mar. 13 sept. 2022 à 06:59, Felix Felix  a écrit :
>>
>>> Hi Bruno,
>>> thanks for the reply I have done what you told me to but I am now still
>>> unable to import PyDealII.Debug
>>> as you've seen below I have added the pydealii directory to the path as
>>> well.
>>>
>>> [image: Screenshot from 2022-09-13 12-53-07.png]
>>>
>>>
>>> is there anything that I may lack.
>>> I have re-compiled and re-installed the library too so I'm not very sure
>>> where my mistake lies.
>>>
>>> Cheers,
>>> Felix
>>> On Friday, September 2, 2022 at 8:15:24 PM UTC+2 bruno.t...@gmail.com
>>> wrote:
>>>
 Felix,

 First, you need to configure deal.II using
 -DDEAL_II_COMPONENT_PYTHON_BINDINGS=ON. Then you need to re-compile and
 re-install the library. Now the wrappers are built but you still need to
 tell python where to find them. You can do that by setting the PYTHONPATH
 to the directory where pydealii is located. Now you should be able to call 
 `
 import PyDealII.Debug` from python.

 Best,

 Bruno

 On Friday, September 2, 2022 at 1:15:52 PM UTC-4 felix...@gmail.com
 wrote:

> Deal all,
>
> could someone teach me on how do I use the python binding. It says
> that I should import the package from the tutorial 1 file. But I don't
> understand how to do it. Could someone here be kind enough to teach me or
> tell me the steps?
>
> Best regards,
> Felix
>
 --
>>> 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 a topic in the
>>> Google Groups "deal.II User Group" group.
>>> To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/dealii/hxM1sVThjZ0/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to
>>> dealii+un...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/dealii/fd410517-24e5-40d1-9666-fa7e26d94f55n%40googlegroups.com
>>> 
>>> .
>>>
>> --
> 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 a topic in the
> Google Groups "deal.II User Group" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/dealii/hxM1sVThjZ0/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> dealii+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/dealii/ef92fe71-8be8-4874-894e-e0989b36360en%40googlegroups.com
> 
> .
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/CAGVt9eOjSCh2GjxPDqiwds%2BS8mxOqbU0w9Bypr8ijC8mdzHXGg%40mail.gmail.com.


Re: [deal.II] Re: Python Binding

2022-10-05 Thread Felix Felix
Hi 

Thank you Bruno for your help I have resolved the issue, it turns out I had 
many problems throughout the installations with my directories. 
I reinstalled and reconfigured everything and it has now worked smoothly. 
On Tuesday, September 13, 2022 at 3:11:46 PM UTC+2 bruno.t...@gmail.com 
wrote:

> Felix,
>
> You need to use the path where you have installed the library. It looks 
> like you have compiled the library but not installed it. The PYTHONPATH you 
> want to use is /home/felixelf/Deal.II/build/python3.10/site-packages (I 
> don't remember if site-packages should be in the path or not)
>
> Best,
>
> Bruno
>
> Le mar. 13 sept. 2022 à 06:59, Felix Felix  a écrit :
>
>> Hi Bruno, 
>> thanks for the reply I have done what you told me to but I am now still 
>> unable to import PyDealII.Debug 
>> as you've seen below I have added the pydealii directory to the path as 
>> well.
>>
>> [image: Screenshot from 2022-09-13 12-53-07.png]
>>
>>
>> is there anything that I may lack. 
>> I have re-compiled and re-installed the library too so I'm not very sure 
>> where my mistake lies.
>>
>> Cheers, 
>> Felix 
>> On Friday, September 2, 2022 at 8:15:24 PM UTC+2 bruno.t...@gmail.com 
>> wrote:
>>
>>> Felix,
>>>
>>> First, you need to configure deal.II using 
>>> -DDEAL_II_COMPONENT_PYTHON_BINDINGS=ON. Then you need to re-compile and 
>>> re-install the library. Now the wrappers are built but you still need to 
>>> tell python where to find them. You can do that by setting the PYTHONPATH 
>>> to the directory where pydealii is located. Now you should be able to call `
>>> import PyDealII.Debug` from python.
>>>
>>> Best,
>>>
>>> Bruno
>>>
>>> On Friday, September 2, 2022 at 1:15:52 PM UTC-4 felix...@gmail.com 
>>> wrote:
>>>
 Deal all, 

 could someone teach me on how do I use the python binding. It says that 
 I should import the package from the tutorial 1 file. But I don't 
 understand how to do it. Could someone here be kind enough to teach me or 
 tell me the steps? 

 Best regards, 
 Felix

>>> -- 
>> 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 a topic in the 
>> Google Groups "deal.II User Group" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/dealii/hxM1sVThjZ0/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> dealii+un...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/dealii/fd410517-24e5-40d1-9666-fa7e26d94f55n%40googlegroups.com
>>  
>> 
>> .
>>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/ef92fe71-8be8-4874-894e-e0989b36360en%40googlegroups.com.


Re: [deal.II] Looking for clarification on a few places on Step-44

2022-10-05 Thread Wolfgang Bangerth

On 10/5/22 07:30, Matthew Rich wrote:


I am trying to understand the process so I could potentially extend this 
formulation for biphasic materials. The way it handles incompressibility is 
perfect for high water content tissues. My concern revolves around adding 
another phase and explicitly solving for the fluid displacements in the 
system. I was going to follow a similar strategy, but I am worried that this 
approach is very specific.


IMHO the key feature for this approach is the ability to condense out the 
pressure and volumetric ratio variables and recover the displacement only 
formulation but with anti-locking properties baked in as opposed to starting 
with a pure displacement formulation. I would like to preserve that if 
possible. I am just worried I will wind up in a hole I cannot climb out of...


These comments were very helpful. One quick question if you just 
proceed without the condensation would that still work? In one of the 
tutorials, If I abandoned the notion of using the CG solver and used something 
like GMRES can I avoid some of the manipulation after I have the linearized 
system?


Thanks for the prompt response and thoughtful answers! This stuff is hard and 
fascinating at the same time.


Matthew -- a common problem when writing tutorials is that it's hard to 
anticipate what will be clear to readers and what will not. If you think that 
there are things you learned from Jean-Paul's email that you wished had been 
part of the text surrounding step-44, would you be interested in extending the 
documentation of that program?


Best
 Wolfgang

--

Wolfgang Bangerth  email: bange...@colostate.edu
   www: http://www.math.colostate.edu/~bangerth/

--
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/13d9662f-75f4-33ec-6a99-e12a98e5fd38%40colostate.edu.


Re: [deal.II] Looking for clarification on a few places on Step-44

2022-10-05 Thread Matthew Rich
This was very helpful!

I am trying to understand the process so I could potentially extend this
formulation for biphasic materials. The way it handles incompressibility is
perfect for high water content tissues. My concern revolves around adding
another phase and explicitly solving for the fluid displacements in the
system. I was going to follow a similar strategy, but I am worried that
this approach is very specific.

IMHO the key feature for this approach is the ability to condense out the
pressure and volumetric ratio variables and recover the displacement only
formulation but with anti-locking properties baked in as opposed to
starting with a pure displacement formulation. I would like to preserve
that if possible. I am just worried I will wind up in a hole I cannot climb
out of...

These comments were very helpful. One quick question if you just
proceed without the condensation would that still work? In one of the
tutorials, If I abandoned the notion of using the CG solver and used
something like GMRES can I avoid some of the manipulation after I have the
linearized system?

Thanks for the prompt response and thoughtful answers! This stuff is hard
and fascinating at the same time.

Matt

On Tue, 4 Oct 2022 at 14:03, Jean-Paul Pelteret 
wrote:

> Hi Matthew,
>
> I'm glad that you find step-44 to be a useful tutorial! Let me try to
> answer your questions directly.
>
> *My first question deals with the statement "The Euler-Lagrange equations
> corresponding to the residual"*
>
> *Directly above this sentence is the residual, whose derivation I
> understand. Where I am lost is that s tact on to equations. I have** only
> one residual equation. I cannot bridge that disconnect. *
>
> This is just another way of saying that the three equations listed there
> (these E-L equations) are the strong form of the governing equations.
> Basically, if you take each of these equations (along the way, modifying
> the definition of the stress in the equilibrium equation), test them with
> the appropriate test function and sum up the three residual contributions
> then you recover the (total) residual, or stationary point of the residual,
> that is listed above. The point is that it not necessarily so straight
> forward to go from the strong form to the weak form for this mixed
> formulation, so identifying the conservation equations a-postori is a
> helpful sanity check here. They seem to align with what we're trying to do
> here.
>
>
> *I am completely lost here. What is the significance of p and J not having
> derivatives on them that makes it "easy" to solve for those terms in
> isolation? *
>
> Well, that's a valid point. I can't quite recall what exactly we were
> trying to identify with this comment. I'll think about it, as that seems to
> be a point that we could improve on in the documentation. That there is no
> K_{pp} contribution is significant, because it makes condensing out the p
> and J fields easier. Maybe we meant to refer to the lack of contribution to
> K_{pp} (as there is no second derivative involving a variation and
> linearisation of p.
>
> *I am also confused how K_pJ, K_Jp and K_JJ  form a block diagonal matrix.
> I could get there if I ignore the top row but then the equations below do
> not make sense I think. Some detail on this part of the process would be
> great. *
>
> So this is more easy to explain. We specifically choose discontinuous
> shape function to discretise these fields. As there are no interface/flux
> contributions, all local element contributions for these terms will remain
> local and you therefore end up with an assembled matrix for these
> contributions that has a block-like structure. The K_{JJ} matrix is
> evidently block-diagonal, as it is a field that couples with itself. As for
> the coupling matrices K_{pJ} and K_{Jp}, they are block-diagonal because we
> chose *exactly* the same discretisation for both fields (i.e. the shape
> functions and polynomial order match).
>
> Does that make sense?
>
> Best,
>
> Jean-Paul
> On 2022/09/30 19:16, Matthew Rich wrote:
>
> Hi,
>
> Step-44 has a lot going on and really sets you up to tackle a variety of
> real world problems. There is a significant jump in complexity between this
> tutorial and steps 8,17 & 18.
>
> I have been reading the references and I am about there but need few
> clarifications for why things are the way they are.
>
> Any assistance would be much appreciated...
>
> My first question deals with the statement "The Euler-Lagrange equations
> corresponding to the residual"
>
> Directly above this sentence is the residual, whose derivation I
> understand. Where I am lost is that s tact on to equations. I have only one
> residual equation. I cannot bridge that disconnect.
>
> My other question has to deal with the solving procedure for K (see
> snippet below)
> [image: Ksolve.png]
>
>
> I am completely lost here. What is the significance of p and J not having
> derivatives on them that makes it "easy" to solve 

[deal.II] Re: Matrix-based p-multigrid preconditioning

2022-10-05 Thread 'yy.wayne' via deal.II User Group
Hello sir,

One thing I'm confused is that why we use "make_hanging_node_constraints" 
and "interpolate_boundary_values" for a new constraints in solve_with_gmg 
in step-75, instead of the boundary_constraints as done in previous MG 
tutorials.

在2022年10月4日星期二 UTC+8 00:11:49 写道:

> Hi!
>
> The "Possibilities for extensions" section of step-75 gives you a few 
> hints on how to achieve p-multigrid preconditioning with matrix-based 
> methods:
>
> https://www.dealii.org/current/doxygen/deal.II/step_75.html#Solvewithmatrixbasedmethods
>
> If you look for an example implementation, the "hpbox" tool demonstrates 
> both matrix-based and matrix-free implementations of the p-multigrid method.
> https://zenodo.org/record/6425947
> https://github.com/marcfehling/hpbox/
>
> Best,
> Marc
>
> On Monday, October 3, 2022 at 3:39:51 AM UTC-6 yy.wayne wrote:
>
>> Hello,
>>
>> I plan to test the converge of polynomial multigrid preconditioning on a 
>> problem, with matrix-based framework. However, step-75 is a bit confusing 
>> since I cannot clearly separate classses contributed by matrix-free and 
>> p-multigrid. 
>>
>> Specifically, in step-16 (with MeshWorker) and step-56 (assemble 
>> cell_matrix by hand) there are assemble_system() and assemble_multigrid(), 
>> while in step-75 there are solve_system() which calls solve_with_gmg and 
>> mg_solve. It is due to matrix-free or p-multigrid? By the way, is there a 
>> code gallery for matrix-based polynomial-multigrid ? 
>>
>> Thanks
>>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/4d217db0-6b03-4286-8b3f-ccbf01417768n%40googlegroups.com.


Re: [deal.II] Stress in cylindrical coordinate system

2022-10-05 Thread Johanna Meier
Dear Jean-Paul,

Thank you so much for your response and the provided links! That definitely 
helped a lot. 

Best,
Johanna

On Tuesday, October 4, 2022 at 7:26:34 PM UTC+2 Jean-Paul Pelteret wrote:

> Dear Johanna,
>
> What you describe here makes sense. Such a transformation is described at 
> this link 
> 
>  
> (see section 2.7 "Converting tensors between Cartesian and Spherical-Polar 
> bases". I think that the circumferential stress would then be S_{\theta 
> \theta}, according to their notation). Its just that (in general) your 
> rotation matrix would have to change for each evaluation point, as the 
> radius and angle with respect to the axis would change. 
>
> We have a couple of functions already implemented that might help you to 
> achieve this:
>
>- Rotation matrices (2d,3d): 
>
> https://dealii.org/current/doxygen/deal.II/namespacePhysics_1_1Transformations_1_1Rotations.html#a68bba56f6c1ebfbb52f871996df965ae
>  
>- Basis transformation: 
>
> https://dealii.org/current/doxygen/deal.II/namespacePhysics_1_1Transformations.html#a626b00a6e08a79449cbf120cb3e81fdb
>  
>
> I hope that this helps you.
>
> Best,
>
> Jean-Paul
> On 2022/10/01 11:07, Johanna Meier wrote:
>
> Hi all, 
>
> I am having a conceptual issue and hope someone might be able to help me 
> out on it.
> My question is, if there is a way to transform stresses from cartesian to 
> cylindrical coordinates so that I can examine, for example, the 
> circumferential stress in a tube? A setup I had in mind is similar to step 
> 18 in geometry, but instead of applying a load on top of the cylinder I 
> would pressurize the inside. Or step 44 but replacing the geometry by a 
> cylinder.
>
> My initial idea was to somehow rotate the stress at a quadrature point 
> during postprocessing from the global cartesian coordinate system to a 
> local cartesian system of which one axis is aligned with the radial 
> direction and another one with the z-direction. The remaining axis would be 
> tangential to the "theta" axis (circumferential direction). Does something 
> like that make sense at all?
>
> How are situations like this handled in practice? Any hints would be 
> welcome!
>
> Best,
> Johanna
>
> -- 
> 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+un...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/dealii/57d95553-e531-4030-b9b8-266fc394da96n%40googlegroups.com
>  
> 
> .
>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/f61e924f-4baf-4501-aaa8-fdf8239916e9n%40googlegroups.com.