std exception 'class std::out_of_range' : 'invalid unordered_map<K,T> key' was caught
20 次查看(过去 30 天)
显示 更早的评论
Hello all,
I use simulink 2020b and when i run my model and it reach the initializing step I get the error " std exception 'class std::out_of_range' : 'invalid unordered_map<K,T> key' was caught ", it doesn't even show where the error is from or which block,
any Idea how to approach this error ?
2 个评论
Amish
2025-3-25
Can you share the model or exact error message? Some screenshots might help understand the issue better.
回答(1 个)
Spruha
2025-3-26
Hi Hamza,
The error "class std::out_of_range": "invalid unordered_map<K,T>key" means that the model is trying to access a key in an unordered_map that does not exist. This issue often occurs in complex models that contain nested subsystems or several data dictionaries. Without the model, I can only suggest potential causes.
Possible causes can be:
- When there is complex interaction between nested subsystems, it may lead to timing issues where one subsystem is trying to access data before it's been generated by another.
- A block might be trying to access data in the unordered_map before the data is inserted, this data dependency can lead to an invalid key error.
- When there is custom S-Functions or Embedded MATLAB Functions with internal unordered_map implementation, there could be logic errors or incorrect interactions with other data structures
You can try these to fix the error:
- Verify your model's subsystem relationships, initialization, and data flow.
- To identify the problem, use displays, scopes, and limited simulation stepping.
- Check for logical problems in the custom blocks.
Hope this helps!
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Event Functions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!