X-Git-Url: http://git.megacz.com/?p=anneal.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fqfat%2Fgeom%2FBindingGroup.java;h=7a64af96a5d1ab50f755b54e077d28d54f6bafb2;hp=8c2d9a7a8318f59f049a2a54d0d725d19bfa806c;hb=7c42fc87add9f8304182ccfd9722e22e95a70a96;hpb=5f15a6155bf7fbf2d62b3ab9fd992a54af10a95a diff --git a/src/edu/berkeley/qfat/geom/BindingGroup.java b/src/edu/berkeley/qfat/geom/BindingGroup.java index 8c2d9a7..7a64af9 100644 --- a/src/edu/berkeley/qfat/geom/BindingGroup.java +++ b/src/edu/berkeley/qfat/geom/BindingGroup.java @@ -16,12 +16,17 @@ public class BindingGroup implements Iterable { public int size() { return matrices.size(); } + public void setKrank(Matrix k) { krank = krank.times(k); } public void merge(BindingGroup bg, Matrix m) { if (bg==this) throw new Error(); for(HasBindingGroup hbg : bg.matrices.keySet()) { matrices.put((T)hbg, bg.matrices.get(hbg).times(m)); hbg.bindingGroup = this; } + + Matrix v = getMatrix(bg.master, master); + krank = krank.times(v.inverse().times(bg.krank).times(v)); + HashSet stuff = new HashSet(); for(HasBindingGroup hbg : bg.matrices.keySet()) stuff.add(hbg);