// only the values in the lower triangle are used. // !matrix values will be changed! private final void reset(final BasicSymmetricalDistanceMatrix distances) { _n = distances.getSize(); _d = distances; _r = new double[_n]; _mappings = new int[_n]; _d_values = _d.getValues(); initExternalNodes(); }
private final void initExternalNodes() { _external_nodes = new PhylogenyNode[_n]; String id; for (int i = 0; i < _n; ++i) { _external_nodes[i] = new PhylogenyNode(); id = _d.getIdentifier(i); if (id != null) { _external_nodes[i].setName(id); } else { _external_nodes[i].setName(Integer.toString(i)); } _mappings[i] = i; } }