Skip to content

Commit 6b2b2a4

Browse files
committed
make BEAST v2.8 compatible
1 parent 7ac34e4 commit 6b2b2a4

4 files changed

Lines changed: 14 additions & 48 deletions

File tree

src/beastlabs/inference/HeatedMCMC.java

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
import beast.base.core.Description;
1212
import beast.base.inference.Distribution;
13-
import beast.base.inference.Evaluator;
1413
import beast.base.inference.Logger;
1514
import beast.base.inference.MCMC;
1615
import beast.base.inference.Operator;
@@ -166,34 +165,7 @@ protected long runTillResample() throws Exception {
166165
final Operator operator = operatorSchedule.selectOperator();
167166
//System.out.print("\n" + sampleNr + " " + operator.getName()+ ":");
168167

169-
final Distribution evaluatorDistribution = operator.getEvaluatorDistribution();
170-
Evaluator evaluator = null;
171-
172-
if (evaluatorDistribution != null) {
173-
evaluator = new Evaluator() {
174-
@Override
175-
public double evaluate() {
176-
double logP = 0.0;
177-
178-
state.storeCalculationNodes();
179-
state.checkCalculationNodesDirtiness();
180-
181-
try {
182-
logP = evaluatorDistribution.calculateLogP();
183-
} catch (Exception e) {
184-
e.printStackTrace();
185-
System.exit(1);
186-
}
187-
188-
state.restore();
189-
state.store(currentState);
190-
191-
return logP;
192-
}
193-
};
194-
}
195-
196-
final double logHastingsRatio = operator.proposal(evaluator);
168+
final double logHastingsRatio = operator.proposal();
197169

198170
if (logHastingsRatio != Double.NEGATIVE_INFINITY) {
199171

src/beastlabs/prevalence/PrevalenceList.java

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@
1010
import org.w3c.dom.Node;
1111

1212
import beast.base.core.Description;
13+
import beast.base.inference.Scalable;
1314
import beast.base.inference.StateNode;
1415

1516

1617

1718
@Description("Prevalence list is a linked list with times and actions")
18-
public class PrevalenceList extends StateNode {
19+
public class PrevalenceList extends StateNode implements Scalable {
1920

2021
@Override
2122
public void initAndValidate() {
@@ -303,6 +304,13 @@ public int scale(double fScale) {
303304
return nodes.size();
304305
}
305306

307+
@Override
308+
public void scaleOne(int i, double scale) {
309+
int iTime = indexOfNode(i);
310+
Item item = m_items.get(iTime);
311+
move(iTime, item.m_fTime * scale);
312+
}
313+
306314
@Override
307315
public void setEverythingDirty(boolean isDirty) {
308316
setSomethingIsDirty(isDirty);
@@ -321,21 +329,6 @@ public void init(PrintStream out) {
321329
public void log(long nSample, PrintStream out) {
322330
}
323331

324-
/** Valuable interface methods **/
325-
@Override
326-
public double getArrayValue() {
327-
return 0;
328-
}
329-
330-
@Override
331-
public double getArrayValue(int iDim) {
332-
return 0;
333-
}
334-
335-
@Override
336-
public int getDimension() {
337-
return 0;
338-
}
339332

340333
@Override
341334
public void restore() {
@@ -374,4 +367,5 @@ protected void store() {
374367
}
375368
}
376369

370+
377371
}

src/beastlabs/tools/TraceStateNodeSource.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import beast.base.inference.parameter.IntegerParameter;
1616
import beast.base.inference.parameter.Parameter;
1717
import beast.base.inference.parameter.RealParameter;
18+
import beast.base.spec.type.Tensor;
1819
import beastfx.app.tools.LogAnalyser;
1920
import beastfx.app.util.LogFile;
2021

@@ -95,8 +96,8 @@ public void initAndValidate() {
9596
}
9697
if (from.equals("last label reached")) {
9798
StateNode stateNode = stateInput.get().stateNodeInput.get().get(stateNodeNr);
98-
if (dimension < stateNode.getDimension()) {
99-
throw new IllegalArgumentException("Could not find all dimensions of " + stateNode.getID() + " in trace file: " + dimension + "!=" + stateNode.getDimension());
99+
if (dimension < ((Tensor<?, ?>) stateNode).size()) {
100+
throw new IllegalArgumentException("Could not find all dimensions of " + stateNode.getID() + " in trace file: " + dimension + "!=" + ((Tensor<?, ?>) stateNode).size());
100101
}
101102
}
102103

src/test/beast/evolution/likelihood/TreeLikelihoodTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import org.junit.Test;
99

1010
import beast.base.evolution.alignment.Alignment;
11-
import beast.base.evolution.alignment.AscertainedAlignment;
1211
import beast.base.evolution.alignment.Sequence;
1312
import beast.base.evolution.sitemodel.SiteModel;
1413
import beast.base.evolution.substitutionmodel.Frequencies;

0 commit comments

Comments
 (0)