81
Algorithm 4 : V-Slim
Input: A set <S of m snapshots, and a tolerance ε Ç [0,1)
Output: The set <S of active snapshots
1: for j = 1 : m, compute the deviation of the jth snapshot (D7 := D(<S7))
2.∙ Let M = rnaxj=i:m(T>j)
3: Normalize deviations (set T>3 := T>3∣M for all j — 1 : m)
4: A = {j : T>j < ε}
5: S = {>Sj ■' j € A}∙
Another technique to shrink the size of 5 is to store only every ⅛th snapshot in
the local set Cj. This is reasonable because snapshots that are close together in time
are more similar. Keeping every snapshot gives maximal information, but we expect
that we can get by with less (and our results indicate that this is indeed the case).
In our current implementation, such attention to shrinking the set of snapshots
is necessary, but in the future one could use ARPACK (via the eigs command in
MATLAB), which is a suite of iterative eigensolvers tailored to large-scale problems,
to drastically reduce the cost of computing these SVDs. Previous experience gives
us confidence that by using this package we can even eliminate the need for the
aforementioned snapshot-shrinking algorithms. Nevertheless, the methods given here
contribute a one-time cost, because results of these computations can be stored and
reused for all future simulations of a specific morphology. This, along with the fact
POD and DEIM set-up times for the simulations in this paper often required ~ 1
second and at most ~ 10 seconds, means we do not include set-up times in any of
our timing comparisons.