A substantial fraction of the time that computational modellers dedicate to developing their models is actually spent trouble-shooting and debugging their code. However, how this process unfolds is seldom spoken about, maybe because it is hard to articulate as it relies mostly on the mental catalogues we have built with the experience of past failures. To help newcomers to the field of material modelling, here we attempt to fill this gap and provide a perspective on how to identify and fix mistakes in computational solid mechanics models. To this aim, we describe the components that make up such a model and then identify possible sources of errors. In practice, finding mistakes is often better done by considering the symptoms of what is going wrong. As a consequence, we provide strategies to narrow down where in the model the problem may be, based on observation and a catalogue of frequent causes of observed errors. In a final section, we also discuss how one-time bug-free models can be kept bug-free in view of the fact that computational models are typically under continual development. We hope that this collection of approaches and suggestions serves as a "road map" to find and fix mistakes in computational models, and more importantly, keep the problems solved so that modellers can enjoy the beauty of material modelling and simulation
翻译:计算模型者花在开发其模型上的时间中,有很大一部分时间是花在了排除故障和调试其代码上。然而,这一过程是如何展开的,却很少被谈论到,或许是因为很难阐明,因为它主要依赖我们过去失败经验所积累的精神目录。为了帮助材料建模领域的新来者,我们在这里试图填补这一空白,并就如何识别和纠正计算固体机械模型中的错误提供观点。为了这个目的,我们描述了组成这种模型的各个组成部分,然后找出可能的错误来源。在实践中,发现错误往往通过考虑正在发生错误的症状来做得更好。结果,我们提供战略,根据观察和常见错误原因的目录,缩小模型中的问题可能在哪里。在最后一节,我们还讨论了如何一次性无错误模型能够保持无问题状态,因为计算模型通常处于持续发展之中。我们希望,这些方法和建议的收集可以作为“路线图”来查找和修正计算模型模型中的错误,更重要的是,使模拟问题得到解决,并且更加重要的是,能够享受模拟。