Getting error : "Transient initialization at time 2.23965, solving for consistent states and modes, failed to converge."
116 次查看(过去 30 天)
显示 更早的评论
I am tring to simulate motor control model in matlab using simscape. Model start runnning without any error but after some time it throws warings and eventualy error.
Following is the warning :
"Solver was unable to reduce the step size without violating minimum step size of 7.76595E-15 for 5 consecutive times at time 2.18592. Solver will continue the simulation with the step size restricted to 7.76595E-15 and using an effective relative error tolerance of 0.00117102, which is greater than the specified relative error tolerance of 0.001. This usually may be caused by violating algebraic constraints in the differential-algebraic system or by the high stiffness of the system. Try tightening the error tolerances, and/or the tolerances for computing consistent conditions. If the problem persists, please check the system or increase the solver Number of consecutive min steps violation parameter."
Here is the Error :
- Transient initialization at time 2.239652580000184, solving for consistent states and modes, failed to converge.
- Nonlinear solver: failed to converge, residual norm too large.
After this my simulation stops.
Could you please discribe where things can go wrong ?
2 个评论
Aditya
2023-7-3
Hi Parth,
This error is usually caused due to 'Algebraic Loops' in your simulation, you can check for them using the below command
Simulink.BlockDiagram.getAlgebraicLoops('name of your file')
Once you get rid of them, your simulation should run fine and much quicker. Hope this helps!
回答(1 个)
nick
2024-1-29
Hi Parth,
I understand from your query that you are seeking to resolve the error "failed to converge, residual norm too large."
Please provide the complete model and any associated files pertaining to this error. This error commonly occurs when a model is excessively idealized, resulting in abrupt transitions that prevent the solver from converging. In such cases, the solver may attempt transient initialization.
To help rectify the error, I recommend the following modifications:
1. Reduce the maximum time step to see if a smaller step facilitates convergence of the simulation.
2. Increase the solver's convergence tolerance in the configuration settings.
3. Modify component parameters, such as 'Open Resistance' or 'Closed Conductance', to make the model more representative of actual conditions and less idealized.
4. Examine the model for any errors, inconsistencies, or incorrect assumptions. Simplify the model by removing unnecessary components or subsystems.
You may refer the following documentation to learn more about troubleshooting simulation errors :
Hope this helps.
0 个评论
社区
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Troubleshooting 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!