Я запускаю трехмерную твердотельную модель в скрипте Abaqus Python, который должен быть проанализирован 200 раз, поскольку модель была организована в цикле for (для i в диапазоне (0,199):). Иногда я получаю следующую ошибку, после чего анализ прекращается. Я не могу понять причину.
Odb_0=session.openOdb(name='Job-1'+'.odb')
odberrror: файл .lck для выходной базы данных D:/abaqus/Model/Job-1.odb указывает, что обработчик входных файлов анализа в настоящее время модифицирует базу данных. В настоящее время база данных не может быть открыта.
Отмечено, что все переменные, включая «Odb_0» и ...., удаляются в конце каждого шага цикла перед запуском следующего.
Большое спасибо за ваше уведомление. После множества проб и ошибок я обнаружил, что в некоторых итерациях со случайно сгенерированными входными значениями некоторые элементы сетки (Hex) выходят из строя без видимой причины. Итак, в таких условиях я решил использовать элементы сетки Tet, несмотря на то, что это может внести некоторые приближения в наши анализы. Этот подход решил предыдущую проблему, хотя следующая ошибка возникает только в нескольких последующих итерациях: «VisError: с использованием предоставленных параметров не были извлечены данные xy».
@Mohsen Abyani Возможно, у вас не загружены данные ODB или вы не определили / не настроили вывод при построении своей модели. например, я обычно получаю VisError, когда пытаюсь извлечь какие-то данные о соединителях, но вывод соединителя не был определен на этапе предварительной обработки.
Я не верю, что вашей проблеме поможет изменение типа элемента.
В сообщении и в файле .lck
говорится, что в базе данных возникла тупиковая ситуация с доступом. Выходной файл потерян и не может обновить базу данных .odb
.
Я не уверен, какую базу данных использует Abaqus. Я бы предположил, что входной поток просканирует входной файл и запишет необходимые записи в базу данных до того, как начнется решение и обработка вывода.
Из документации Abaqus
Файл блокировки (имя_задания.lck) записывается всякий раз, когда выходной файл базы данных открывается с доступом для записи, в том числе при выполнении анализа и записи выходных данных в выходной файл базы данных. Файл блокировки предотвращает одновременную запись в выходную базу данных из нескольких источников. Он удаляется автоматически, когда выходной файл базы данных закрывается или когда завершается анализ, создавший его.
Когда вы удаляете свой предыдущий анализ, вы должны быть уверены, что все процессы, связанные с этим моделированием, были завершены. Есть несколько возможностей сделать это:
Спасибо за ваши уведомления. Я думаю, что задание задания каждой симуляции по-разному (например, «Задание-1», «Задание-2» и т. д.) и удаление каждого в конце каждого шага помогло мне решить проблему.
Не могли бы вы принять ответ в этом случае?
вы продолжаете открывать сеанс, можете ли вы опубликовать больше кода?