Forum Message

 

 

We have moved the forum to https://forum.ngsolve.org . This is an archived version of the topics until 05/05/23. All the topics were moved to the new forum and conversations can be continued there. This forum is just kept as legacy to not invalidate old links. If you want to continue a conversation just look for the topic in the new forum.

Notice

The forum is in read only mode.

Cylinder Coordinates / Integration rule

More
4 years 3 months ago #2277 by hvwahl
Hi everyone,

currently I am trying to compute a vector valued Poisson problem in cylindrical coordinates, under the assumption of rotational symmetry which allows the problem to be reduced into a 2-dimensional one. The weak formulation of this is the following:
[tex]
\int_{\Omega^{2d}} x \nabla u : \nabla v + \frac{1}{x} u_x v_x dx dy
[/tex]

- The term 1/x * u_x * v_x term is of course singular on the rotational axis (r -> x= 0). However I have u_x = 0 on the boundary x = 0 so I do not have to solve on this boundary.
- In order to not evaluate anything on the boundary, I have manually changed the integration rule to only use interior points.

However, the stiffness-matrix still contains 'nan' values for the dofs (see attached MWE).

File Attachment:

File Name: Poission_C...otSym.py
File Size:2 KB


Can anyone explain/solve this problem?

Best wishes,
Henry
More
4 years 3 months ago #2278 by joachim
Hi Henry,

it is fixed in the coming nightly.
The integration with simd was using IntegrationPoints = (0,0,0), with 0 weights, for the overhead, which caused the division 0/0.

it works with your current version if you disable simd by SymbolicBFI(...., simd_evaluate=False)

Joachim
More
4 years 3 months ago #2281 by hvwahl
Hi Joachim,

thank you for the quick reply and fix!

Is there an internal way to get integration rules which do not use points on the element boundary, or do I always have to specify them manually?

Best wishes,
Henry
Time to create page: 0.115 seconds