Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.
Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.
advice please !
Posted 09.09.2010, 07:51 GMT-4 Structural Mechanics Version 3.5a 12 Replies
Please login with a confirmed email address before reporting spam
I try to make blood vessel modeling with comsol.
So, I study how to operate comsol by tutorial.
This is what I did.
1. Model navigator
2. options and settings
3. geometry modeling
4. subdomain settings
5. boundary conditions
6. multiphysics
7. boudary conditions
8. mesh generation
9. computing the solution <- problem occurs during click solve button in this step (click solve manager button -> click solve for tab -> select incompressible navier-stokes from the solve for variables list -> click solve button -> error
================================================================================
Progress - Open Model: Thu Sep 09 19:24:30 KST 2010
================================================================================
================================================================================
Progress - Solve Problem: Thu Sep 09 19:32:40 KST 2010
================================================================================
Time-dependent solver/Generalized alpha
Number of degrees of freedom solved for: 71608
Step Time Stepsize Res Jac Sol Order Tfail NLfail LinIt LinErr LinRes
0 0 out 1 2 0 0 0 9.3e-309 5.2e-057
Error:
Failed to find consistent initial values.
Out_of_memory_LU_factorization
================================================================================
Progress - Solve Problem: Thu Sep 09 19:53:53 KST 2010
================================================================================
Time-dependent solver/Generalized alpha
Number of degrees of freedom solved for: 71608
Step Time Stepsize Res Jac Sol Order Tfail NLfail LinIt LinErr LinRes
0 0 out 1 2 0 0 0 3e+051 1.2e+295
Error:
Failed to find consistent initial values.
Out_of_memory_LU_factorization
What did I make miss?
Please login with a confirmed email address before reporting spam
I guess that the problem comes from your hardware. You probably do not have enough memory since the error warning says "Out of memory LU factorzation".
You are trying to solve Navier-Stokes equations with 71608 degrees of freedom, which on a 32-bits machine is probably not possible to solve (I have a 32-bit computer with 4 GB Ram, and the upper limit when I solve Navier-Stokes is about 40000 degrees of freedom).
Now it also depens on which solver you use. You could try to use a direct sovler that requires less memory (e.g. Pardiso instead of UMFPACK) or to switch to an iterative solver (I do not know what you are presently using).
You can also try to reduce the element order of the domains where you try to solve Navier-Stokes equations. Typically, Comsol uses Lagrange P2-P1 elements for Navier-Stokes, but you could try to use Lagrange-Linear for a first try. This will reduce the memory consumption drastically.
Hope this helps.
Alois
Please login with a confirmed email address before reporting spam
I have used iterative method such as GMRES with many preconditions...but the it showed that "Fail to find consistent initial condition."
I try to figure it out this problems for example changing boundary condition, change mesh size.
However, it is not working. (T_T)
Do you have any idea?
Please login with a confirmed email address before reporting spam
Otherwise if you can send your model I can have a look.
Regards,
Alois
Please login with a confirmed email address before reporting spam
Yes, I am running transient problem. I try to follow ur suggestion. I also attach my case file.
Thanks so much
Suabsakul
Attachments:
Please login with a confirmed email address before reporting spam
Another hint: try to guess the solution to your dependent variables and to set them manually into the solver configuration to help the solver to find good initial values:
Solver Parameters -> Advanced -> Scaling of variables:
Type of scaling: "Manual"
Manual scaling: e.g. "u 1e-1 v 1e-1 w 1e-1 p 1e2"
Please login with a confirmed email address before reporting spam
Cheers,
Suabsakul Gururatana
Please login with a confirmed email address before reporting spam
I am deailing with a contact model, the solver can not get convergence. I know that the reasons are various and I first try to modify the Scaling of variables, but I don't know the approximate order of magnitude of all the solution components.
Can you give some advices about modify the scaling of variables?
Thank you in advance!
Yajuan
Please login with a confirmed email address before reporting spam
I asked Comsol support previously about this question: how to get the order of magnitude of the different variables for proper manual scaling. The answer that I got was that I should try to solve the model sequentially for the different problems (e.g. in my case it was a fluid-structure interaction problem, so I had to solve once only for the structural mechanics part and once only for the fluid part). In that way I could get a first guess on the order of magnitude of the different variables.
Hope it helps.
Alois
Please login with a confirmed email address before reporting spam
Hi,
I asked Comsol support previously about this question: how to get the order of magnitude of the different variables for proper manual scaling. The answer that I got was that I should try to solve the model sequentially for the different problems (e.g. in my case it was a fluid-structure interaction problem, so I had to solve once only for the structural mechanics part and once only for the fluid part). In that way I could get a first guess on the order of magnitude of the different variables.
Hope it helps.
Alois
HI, Alois,
Your prompt is very useful to my non-convergency problem. But I still have some questions.
Are these Manual scaling values needing to set for the solver configuration equal to the pre-solved values obtained with your method?
Thanks for your time.
Please login with a confirmed email address before reporting spam
I am not sure that I understand your question correctly. The reason for the manual scaling of the dependent variables is to help the solver to find the solution. In that sense, the order of magnitude of the variables for which you set a manual scaling should be the same as the order of magnitude of the result.
What Comsol support was saying: try to reduce the complexity of your model to only some of the variables, solve for those variables (and hope to get convergence) and figure out what the order of magnitude is by checking the result. Then, go back to your original and more complex model, and use the orders of magnitude found previously to manually scaled the variables.
Got it?
Please login with a confirmed email address before reporting spam
You mean that first you solved the fluid and structural mechanics sequentially and get the results, then set these orders in the next fully coupling solver?
My model is thermal-structural interaction model with friction problem. I take the sequential coupling slver to save memory. Is this the same as solving once only for one part what you said ?
With my model, the "no convergence" error always occurs. I modify the parameters in the free mesher (I don't know the other methods to do the local refine mesher), and take the displacment constraint to replace the load constraint. On that basis, I start to modify the manual scaling and try several groups, but the solver has no convergence until now.
I notice the solver's record: the order of magnitude of ErrEst of the nolinear solver declined when I modify the order of magnitude of "u v w". But the ErrEst upgrades with the iter rising. Can this message give me some hints with the modifing of the manual scaling?
And just now I try the model with changing friction to contatct, but it still has no convergence.
I'm quite disoriented now, and I am wondering that what can i do next.
I don't know if you had the same problem before. Any advices will be usefull and appreciated!
Best wishes!
Yajuan
Please login with a confirmed email address before reporting spam
Hi
I am not sure that I understand your question correctly. The reason for the manual scaling of the dependent variables is to help the solver to find the solution. In that sense, the order of magnitude of the variables for which you set a manual scaling should be the same as the order of magnitude of the result.
What Comsol support was saying: try to reduce the complexity of your model to only some of the variables, solve for those variables (and hope to get convergence) and figure out what the order of magnitude is by checking the result. Then, go back to your original and more complex model, and use the orders of magnitude found previously to manually scaled the variables.
Got it?
HI,Alois
I'm sorry for not having clarify my thinking. Thanks for your prompt and i get it .
Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.
Suggested Content
- KNOWLEDGE BASE Resolving Time-Dependent Waves
- KNOWLEDGE BASE Out of Memory During Assembly
- BLOG Why Adopting COMSOL Multiphysics Is a Good Career Move
- BLOG COMSOL Conference 2013 Boston Keynote Speaker Round-Up
- FORUM advice please !