-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate to BEAST 2.7 operators #128
Comments
It is very complex. Each AdaptableVarianceMultivariateNormalOperator will map to each beast partition. The code needs a Map to store the idref of parameters in an AVMN operator, which has be partially implemented in the branch AVMNNoperator. Check TODO in |
The proposed implementation is to add AVMNNoperator separately, after adding all default operators but before adding extra operators. So it needs:
Here is the BEAST template for guide: <operator id="AVMNOperator.$(n)" spec="beast.base.evolution.operator.kernel.AdaptableVarianceMultivariateNormalOperator" weight="0.1"
coefficient="1.0"
scaleFactor="1"
beta="0.05"
initial="800"
burnin="400"
every="1" allowNonsense="true">
<transformations id="AVMNSumTransform.$(n)" spec="beast.base.inference.operator.kernel.Transform$LogConstrainedSumTransform" sum="1.0">
<!-- frequencies -->
</transformations>
<transformations id="AVMNLogTransform.$(n)" spec="beast.base.inference.operator.kernel.Transform$LogTransform">
<!-- site and substitution model parameters -->
</transformations>
<transformations id="AVMNNoTransform.$(n)" spec="beast.base.inference.operator.kernel.Transform$NoTransform">
<!-- tree -->
</transformations>
</operator>
<operator id="StrictClockRateScaler.c:$(n)" spec="beast.base.evolution.operator.AdaptableOperatorSampler" weight="1.5">
<parameter idref="clockRate.c:$(n)"/>
<operator idref="AVMNOperator.$(n)"/>
<operator id='StrictClockRateScalerX.c:$(n)' spec='kernel.BactrianScaleOperator' scaleFactor="0.75" weight="3" parameter='@clockRate.c:$(n)'/>
</operator>
<operator id="strictClockUpDownOperator.c:$(n)" spec="beast.base.evolution.operator.AdaptableOperatorSampler" weight="1.5">
<parameter idref="clockRate.c:$(n)"/>
<tree idref="Tree.t:$(n)"/>
<operator idref="AVMNOperator.$(n)"/>
<operator id='strictClockUpDownOperatorX.c:$(n)' spec='kernel.BactrianUpDownOperator' scaleFactor="0.75" weight="3">
<up idref="clockRate.c:$(n)"/>
<down idref="Tree.t:$(n)"/>
</operator>
</operator>
<operator id="proportionInvariantScaler.s:$(n)" spec="beast.base.evolution.operator.AdaptableOperatorSampler" weight="0.05">
<parameter idref="proportionInvariant.s:$(n)"/>
<operator idref="AVMNOperator.$(n)"/>
<operator id='proportionInvariantScalerX.s:$(n)' spec='kernel.BactrianScaleOperator' scaleFactor="0.5" weight="0.1" parameter="@proportionInvariant.s:$(n)"/>
</operator>
<operator id="mutationRateScaler.s:$(n)" spec="beast.base.evolution.operator.AdaptableOperatorSampler" weight="0.05">
<parameter idref="mutationRate.s:$(n)"/>
<operator idref="AVMNOperator.$(n)"/>
<operator id='mutationRateScalerX.s:$(n)' spec='kernel.BactrianScaleOperator' scaleFactor="0.5" weight="0.1" parameter="@mutationRate.s:$(n)"/>
</operator>
<operator id="gammaShapeScaler.s:$(n)" spec="beast.base.evolution.operator.AdaptableOperatorSampler" weight="0.05">
<parameter idref="gammaShape.s:$(n)"/>
<operator idref="AVMNOperator.$(n)"/>
<operator id='gammaShapeScalerX.s:$(n)' spec='kernel.BactrianScaleOperator' scaleFactor="0.5" weight="0.1" parameter="@gammaShape.s:$(n)"/>
</operator> |
TODO:
The text was updated successfully, but these errors were encountered: