[petsc-users] Singular Eigenproblem with SLEPc

Nidish nb25 at rice.edu
Sun Aug 16 19:50:04 CDT 2020


Thank you for the example, it is indeed useful!

In my application, an additional complication is that the stiffness 
matrix "K" is also singular. So when I run my code with the suggested 
runtime flags, I persistently get a zero pivot error for the LU 
calculation (for the st_pc probably). I'm not sure what factorization or 
solver I should use in this case.

TLDR: I have K.v=lam*M.v where BOTH K and M are singular. The nullspace 
of M is a subset of the nullspace of K.

Thank you,
Nidish

On 8/16/20 1:50 AM, Jose E. Roman wrote:
> Nothing special is required for solving a GHEP with singular M, except for setting the problem type as GHEP, see https://slepc.upv.es/documentation/current/src/eps/tutorials/ex13.c.html
> Jose
>
>
>> El 16 ago 2020, a las 1:09, Nidish <nb25 at rice.edu> escribió:
>>
>> Hello,
>>
>> I'm presently working with a large finite element model with several RBE3 constraints with "virtual" 6DOF nodes in the model.
>>
>> I have about ~36000 3DOF nodes making up my model and about ~10 RBE3 virtual nodes (which have zero intrinsic mass and stiffness). I've extracted the matrices from Abaqus.
>>
>> The way these constraints are implemented is by introducing static linear constraints (populating the stiffness matrix) and padding the mass matrix with zero rows and columns in the rows corresponding to the virtual nodes. So this leaves me with an eigenproblem of the form,
>>
>> K.v = lam*M.v
>>
>> where M is singular but the eigenproblem is well defined. Abaqus seems to solve this perfectly well, but after exporting the matrices, I'm struggling to get slepc to solve this. The manual talks about deflation, etc., but I couldn't really understand too much.
>>
>> Is there any example code for such a case with a singular matrix where these procedures are carried out? Or could you provide references/guidances for approaching the problem?
>>
>> Thank you,
>> Nidish
-- 
Nidish


More information about the petsc-users mailing list