Free-free modal analysis on CPS4 element not working

Hi,

I am trying to perform a simple free-free modal analysis on a single CPS4 element. Here’s the input file:

*Node
1, -50, -50
2, -50, 50
3, 50, 50
4, 50, -50
*Element, Type=CPS4, Elset=Eall
1, 2, 1, 4, 3
*Material, Name=Material-1
*Density
8E-09
*Elastic
210000, 0.3
*Solid section, Elset=Eall, Material=Material-1
1
*Step, Perturbation
*Frequency
12
*Node file
U
*End step

It says that the job was finished but there are no results for all frequencies and some errors appear during the calculation:
errors

It works in Abaqus so the input file must be correct. Do you know what can be wrong here ? Is that a bug or limitation of CalculiX ?

I had a similar problem once.
The eigenvalue solver CCX uses (ARPACK) and can’t find the highest couple of modes. In this case, it looks like there are not as much modes as requested . Try to add some dummy elements with higher frequency modes to occupy the top of the range.

You could refine also.

That’s right, there are only 8 modes in this case because the element has 8 DOFs. I tried requesting just these 8 modes but it didn’t work.

Interesting idea but it didn’t work as well:

*Node
1, -50, -50
2, -50, 50
3, 50, 50
4, 50, -50
10, -250, -50
20, -250, 50
30, -150,50
40, -150,-50
*Element, Type=CPS4, Elset=Eall
1, 2, 1, 4, 3
2, 20, 10, 40, 30
*Elset, elset=El
1
*Elset, elset=Dummy
2
*Material, Name=Material-1
*Density
8E-09
*Elastic
210000, 0.3
*Material, Name=Material-2
*Density
8E-12
*Elastic
210000, 0.3
*Solid section, Elset=El, Material=Material-1
1
*Solid section, Elset=Dummy, Material=Material-2
1
*Step, Perturbation
*Frequency
8
*Node file
U
*End step

Normally I would certainly do that, but the thing is, I want to get the modes for just one element in this case.

Hi,

I have a system with 10 modes and can only go up to 6. I’m using ccx v1.17.1 ccx_PARDISO.exe. v1.18 and v1.19 return inconsistent results.

Windows version

Hi,

if only 2 eigenvalues are requested it “works” but the output says:

Calculating the eigenvalues and the eigenmodes

U^T*M*U=0.000000 for eigenmode 0
U^T*M*U=0.000000 for eigenmode 3

but if 3 eigenvalues are requested then:

 Calculating the eigenvalues and the eigenmodes

*ERROR in d[n,s]aupd: info=-3
       # of converged eigenvalues=16

*ERROR in d[n,s]eupd: info=-3

to me it looks like a bug in the coding of the arpack interface arpack.c
see appendix C for INFO message explanation: http://li.mit.edu/Archive/Activities/Archive/CourseWork/Ju_Li/MITCourses/18.335/Doc/ARPACK/Lehoucq97.pdf
image
image

well, I think I’ve got it. Problem dimension, N=12 in this case, and maximum number of eigenvalues requested has to be set to NEV<=12 (let’s say 12 in this case, all requested) but NCV = number of columns of the matrix V formed by Lanczos basis vectors have to fulfil the relationships: NCV >NEV (NCV recommended greater or equal to 2*NEV) and NCV<=N. So NCV>12 and NCV<=12 in this case which is impossible…This issue cannot happen in a large problem, so if this particular kind of problems are intended to be solved then probably a custom coding of the interface is the solution.

Dear CalculiX users,

JuanP74 is right, info=-3 indicates that some constraints assumed by arpack have been violated. In particular, for a symmetric problem NEV+1<=NCV<=N must apply. So the maximum number of eigenvalues NEV is limited by N-1 and NCV should be in between NEV+1 and N. I am checking that now: first I limit NEV to a maximum of N-1 and then I adapt the value of NCV. For asymmetric matrices NEV+2<=NCV<=N applies. As indicated by JuanP74 this is really only a problem for small models.

Guido

2 Likes

I can confirm that this issue is fixed in CalculiX 2.21.

1 Like