Hi Simon,

> As for the second point, the signature in beagle.h is


Correct -- but in the example Julia gist there are only two arguments
passed, rather than three:
https://gist.github.com/sdwfrost/5c574857bd91648fb7ee#file-beagle-jl-L103-L106

As far as the incorrect result, I would suggest to recheck a few things:
- double check the signatures, for example I don't think
beagleUpdateTransitionMatrices is correct in the Julia version (does not
take `nodeIndices` array)
- make sure that the matrix ordering as you declare the eigenvector
matrices in Julia is as-expected by beagle

Best,
Isaiah



On Sun, Apr 19, 2015 at 3:14 AM, Simon Frost <[email protected]> wrote:

> Dear Isaiah,
>
> Thanks - I noted before that changing types to immutable in some cases
> fixed things, but I didn't think that this would apply to BeagleOperation.
> I'll read over the new docs carefully.
>
> As for the second point, the signature in beagle.h is
>
> /**
>  * @brief Set a state frequency buffer
>  *
>  * This function copies a state frequency array into an instance buffer.
>  *
>  * @param instance              Instance number (input)
>  * @param stateFrequenciesIndex Index of state frequencies buffer (input)
>  * @param inStateFrequencies    State frequencies array (stateCount)
> (input)
>  *
>  * @return error code
>  */
> BEAGLE_DLLEXPORT int beagleSetStateFrequencies(int instance,
>                                          int stateFrequenciesIndex,
>                                          const double*
> inStateFrequencies);
>
> I'll follow up with the BEAGLE devs to see why your fix makes the script
> run, as the output (logL) isn't correct.
>
> Best
> Simon
>

Reply via email to