-
-
Notifications
You must be signed in to change notification settings - Fork 169
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Clean up secondary data in quasi-Newton acceleration #1996
Comments
A possible solution according to Miriam: We could do the same to secondary data separately: Or combine the These two ways would result difference in restart with SVD-method etc. |
If I have understood your comment correctly @Fujikawas then it would be enough to include the secondary data directly in |
Sounds good to me 👍
After step 2, we could try using the same for the waveform implementation. |
Make sense for me, I opened two PRs above, one for tests and one for one W matrix for both ILS and IMVJ, think this method could work.
|
Sounds good to me to 👍 |
In quasi-Newton acceleration, we distinguish primary data (data that is used to compute the acceleration and accelerated) and secondary data (data that is only accelerated). For IQN-ILS, we store W matrices for each secondary data and use the coefficient vector
c
from the primary data:precice/src/acceleration/IQNILSAcceleration.cpp
Lines 209 to 219 in efd7fb6
What should we do with secondary data in IQN-IMVJ? Seems like we silently don't do anything. We underrelax in the first iteration, but we don't do anything in
IQNIMVJAcceleration::computeQNUpdate
. Looking at the math, I am also not sure what we could do, but I did not yet think a lot about it.Two options
IQNIMVJAcceleration::computeUnderrelaxationSecondaryData
), and document.In both cases, we need to improve test coverage. There are currently no tests for secondary data at all.
Context
I stumbled over this while reviewing #1834. We are currently anyway improving documentation concerning secondary data in precice/precice.github.io#366.
The text was updated successfully, but these errors were encountered: