Author Topic: NO CONVERGENCE REASON massage  (Read 5093 times)

mehrangh2016

  • Jr. Member
  • **
  • Posts: 21
NO CONVERGENCE REASON massage
« on: June 10, 2017, 07:54:30 AM »
Dear Sir,

I am trying to run an 3D coupled thermomechanical analysis in parallel version of FEAP, but I face the message on the terminal which says that :
NO CONVERGENCE REASON:  Iterations exceeded, in the first 4 or 5 steps of analysis I see this massage on the terminal, finally it disappears.
When I tested the problem serially, or run the 2D coupled thermomechanical analysis in parallel version, it works without any warning or error. But in parallel version when I type:

 mpirun -n $(NPROC) $FEAPHOME8_4/parfeap/feap -ksp_type cg -pc_type jacobi   

In the case of typing:

mpirun -n 1$(NPROC) $FEAPHOME8_4/parfeap/feap -ksp_type preonly -pc_type lu -pc_factor_mat_solver_package superlu_dist

The parallel analysis started without "NO CONVERGENCE REASON:  Iterations exceeded" massage on the terminal.

I have checked all my user-material and user-element code also the input files and do the steps of running parallel analysis stated in the parmanuals. But I cannot solve this problem.

I want to mention that I use petsc-3.4.5 to run the parallel analysis.

Could you please guide men in this concept.

Regards.

Prof. S. Govindjee

  • Administrator
  • FEAP Guru
  • *****
  • Posts: 1164
Re: NO CONVERGENCE REASON massage
« Reply #1 on: June 10, 2017, 01:08:58 PM »
If I understand correctly, your 2d computation works serially and in parallel.  Your 3d computation works serially.  But if you run parFEAP on the 3d computation is does not work and this is true for a parallel iterative solve and for a parallel direct solve.

I would first start by looking carefully at your serial 3d computation to make sure that it is correct.  Examine the L* file and the O* files and look for anything unusual.  If that is all ok, then try just running parFEAP directly without using mpirun, so using FEAP's built-in solver.  Next see if you can get an $NPROC = 1 solve to work direct and iterative.  Then move to $NPROC > 1.  Some place along this path you should be able to determine what is going wrong.