Я пытаюсь написать код ПЭМ на основе PETSC для решения вязкоупругих структурных проблем.Мне нужно сохранить векторы смещения для всех предыдущих итераций (U_hist)
и использовать их для обновления смещения текущей итерации (U).Скажем, для пятой итерации U_hist
будет выглядеть как
U_hist=[U1 U2 U3 U4];
. Однажды я вычислю смещения на пятой итерации (U5).Я хочу объединить его с уже существующим U_hist
, чтобы сделать вектор смещения U_hist
для следующего шага следующим образом:
U_hist=[U5 U_hist].
Я посмотрел на векторную подпрограмму "VecDuplicateVecs", но яне уверен, что это правильная процедура для задачи, поскольку она не хранит ранее существующие векторы, и мне нужно создавать полный набор данных с нуля после каждой итерации.
Пожалуйста, дайте мне несколько советов относительно того, какой методследует использовать для эффективного хранения зависящих от истории переменных в PETSC.
Спасибо!