This is now fixed in the current git master branch.

Yury, you should be able to download a snapshot or clone from 
https://sourceforge.net/p/pdl/code/ci/master/tree/, build, and install PDL and 
that should fix the problem.

Thanks for reporting the bug!

Derek

> On Sep 13, 2016, at 7:14 PM, Chris Marshall <[email protected]> wrote:
> 
> It looks like there is a typo in the gsl_sf_coupling.pd file for the 
> gsl_sf_coupling_6j where the call to the underlying GSL routine is to 
> gsl_sf_coupling_3j_e which should be changed to gsl_sf_coupling_6j_e on line 
> 41 of the current git version:
> 
>  36 pp_def('gsl_sf_coupling_6j',
>  37        GenericTypes => [L],
>  38        Pars=>'ja(); jb(); jc(); jd(); je(); jf(); double [o]y(); double 
> [o]e()',
>  39        Code =>'
>  40 gsl_sf_result r;
>  41 GSLERR(gsl_sf_coupling_3j_e,($ja(),$jb(),$jc(),$jd(),$je(),$jf(),&r))
>  42 $y() = r.val;
>  43 $e() = r.err;
>  44 ',
>  45        Doc =>'6j Symbols:  (ja jb jc) over (jd je jf).'
>  46       );
> 
> Apologies for not having time to make the fix at the moment.  I should be 
> able to get to this by the weekend unless another developer gets to it before 
> then.
> 
> Pakhomov, if you are comfortable building PDL yourself, you could make the 
> fix yourself.  Again, apologies for not being able to resolve this at this 
> time.
> 
> --Chris
> 
> 
> On 9/13/2016 16:22, Pakhomov Yury wrote:
>> Hello all!
>> 
>> I write pdl program to calculate hyperfine splitting of atomic levels and I 
>> would use module PDL::GSL::COUPLING for calculations of intensity. However, 
>> I faced with a problem. Function gsl_sf_coupling_6j returns zero values for 
>> all my data. 
>> ___________________________________ 
>> use PDL; 
>> use PDL::GSLSF::COUPLING; 
>> 
>> my ($y,$e)=gsl_sf_coupling_6j(7, 6, 5, 4, 5, 2); 
>> print $y; 
>> ___________________________________ 
>> OUTPUT: 0 
>> 
>> When I use pure C-library: 
>> ___________________________ 
>> #include<stdio.h> 
>> #include<gsl_sf.h> 
>> 
>> int main(void){ 
>>  double ret=gsl_sf_coupling_6j(7, 6, 5, 4, 5, 2); 
>>  printf("%f",ret); 
>>  return 1; 
>> } 
>> ____________________________ 
>> 
>> I see value -0.123718 which is right. And similar using fortran code. 
>> I use Slackware Linux x86_64 14.0, PDL-2.016, gsl-1.16, perl 5.16.1 
>> Such error occurs at all computers with other versions of libraries. 
>> How to fix this problem? 
>> 
>> With respect, Yury 
>> 
>> 
>> 
>> ------------------------------------------------------------------------------
>> 
>> 
>> _______________________________________________
>> pdl-general mailing list
>> [email protected] <mailto:[email protected]>
>> https://lists.sourceforge.net/lists/listinfo/pdl-general 
>> <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> pdl-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pdl-general

------------------------------------------------------------------------------
_______________________________________________
pdl-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pdl-general

Reply via email to