annotate +multiblock/local2globalPenalty.m @ 864:c51b3f945c65 bcSetupExperiment

Add functions for taking local closures and penalties global
author Jonatan Werpers <jonatan@werpers.com>
date Wed, 25 Jul 2018 15:24:37 -0700
parents
children ba10f24bf476
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
864
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 % Takes the local penalty for ice or water and turns it into a penalty for the whole system
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 % local -- The local penalty
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 % div -- block matrix division for the diffOp
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 % I -- Index of blockmatrix block
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 function penalty = local2globalPenalty(local, div, I)
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 penaltyDiv = {div{1}, size(local,2)};
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 penalty_bm = blockmatrix.zero(penaltyDiv);
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 penalty_bm{I,1} = local;
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10 penalty = blockmatrix.toMatrix(penalty_bm);
c51b3f945c65 Add functions for taking local closures and penalties global
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 end