function x = patterson_lookup_points ( n )

%*****************************************************************************80
%
%% PATTERSON_LOOKUP_POINTS returns abscissas of a Patterson rule.
%
%  Discussion:
%
%    Our convention is that the abscissas are numbered from left to right.
%
%    The rule is defined on [-1,1];
%
%    These rules constitute a nested family.  The rules can integrate exactly
%    any polynomial of degree 1, 5, 11, 23, 47, 95, 191, 383 or 767, 
%    respectively.
%
%    The data for N = 511 was supplied by Dirk Laurie, and is derived
%    from a NAG Library function d01arf.
%
%    Thanks to Julian Ehlers for pointing out that the 7 point rule was
%    previously being returned as a row vector rather than a column vector.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    25 June 2017
%
%  Author:
%
%    John Burkardt
%
%  Reference:
%
%    Prem Kythe, Michael Schaeferkotter,
%    Handbook of Computational Methods for Integration,
%    Chapman and Hall, 2004,
%    ISBN: 1-58488-428-2,
%    LC: QA299.3.K98.
%
%    NAG Library Documentation,
%    D01ARF,
%    The Numerical Algorithms Group.
%
%    Thomas Patterson,
%    The Optimal Addition of Points to Quadrature Formulae,
%    Mathematics of Computation,
%    Volume 22, Number 104, October 1968, pages 847-856.
%
%  Parameters:
%
%    Input, integer N, the order of the rule.  
%    Legal values are 1, 3, 7, 15, 31, 63, 127, 255, or 511.
%
%    Output, real X(N,1), the abscissas.
%
  x = zeros ( n, 1 );

  if ( n == 1 )

    x =  [ 0.0 ];

  elseif ( n == 3 )

    x = [ ...
    -0.77459666924148337704; ...
     0.0; ...
     0.77459666924148337704 ];

  elseif ( n == 7 )

    x = [ ...
    -0.96049126870802028342; ...
    -0.77459666924148337704; ...
    -0.43424374934680255800; ...
     0.0; ...
     0.43424374934680255800; ...
     0.77459666924148337704; ...
     0.96049126870802028342 ];

  elseif ( n == 15 )

    x = [ ...
    -0.99383196321275502221; ...
    -0.96049126870802028342; ...
    -0.88845923287225699889; ...
    -0.77459666924148337704; ...
    -0.62110294673722640294; ...
    -0.43424374934680255800; ...
    -0.22338668642896688163; ...
     0.0; ...
     0.22338668642896688163; ...
     0.43424374934680255800; ...
     0.62110294673722640294; ...
     0.77459666924148337704; ...
     0.88845923287225699889; ...
     0.96049126870802028342; ...
     0.99383196321275502221 ];

  elseif ( n == 31 )

    x = [ ...
    -0.99909812496766759766; ...
    -0.99383196321275502221; ...
    -0.98153114955374010687; ...
    -0.96049126870802028342; ...
    -0.92965485742974005667; ...
    -0.88845923287225699889; ...
    -0.83672593816886873550; ...
    -0.77459666924148337704; ...
    -0.70249620649152707861; ...
    -0.62110294673722640294; ...
    -0.53131974364437562397; ...
    -0.43424374934680255800; ...
    -0.33113539325797683309; ...
    -0.22338668642896688163; ...
    -0.11248894313318662575; ...
     0.0; ...
     0.11248894313318662575; ...
     0.22338668642896688163; ...
     0.33113539325797683309; ...
     0.43424374934680255800; ...
     0.53131974364437562397; ...
     0.62110294673722640294; ...
     0.70249620649152707861; ...
     0.77459666924148337704; ...
     0.83672593816886873550; ...
     0.88845923287225699889; ...
     0.92965485742974005667; ...
     0.96049126870802028342; ...
     0.98153114955374010687; ...
     0.99383196321275502221; ...
     0.99909812496766759766 ];

  elseif ( n == 63 )

    x = [ ...
    -0.99987288812035761194; ...
    -0.99909812496766759766; ...
    -0.99720625937222195908; ...
    -0.99383196321275502221; ...
    -0.98868475754742947994; ...
    -0.98153114955374010687; ...
    -0.97218287474858179658; ...
    -0.96049126870802028342; ...
    -0.94634285837340290515; ...
    -0.92965485742974005667; ...
    -0.91037115695700429250; ...
    -0.88845923287225699889; ...
    -0.86390793819369047715; ...
    -0.83672593816886873550; ...
    -0.80694053195021761186; ...
    -0.77459666924148337704; ...
    -0.73975604435269475868; ...
    -0.70249620649152707861; ...
    -0.66290966002478059546; ...
    -0.62110294673722640294; ...
    -0.57719571005204581484; ...
    -0.53131974364437562397; ...
    -0.48361802694584102756; ...
    -0.43424374934680255800; ...
    -0.38335932419873034692; ...
    -0.33113539325797683309; ...
    -0.27774982202182431507; ...
    -0.22338668642896688163; ...
    -0.16823525155220746498; ...
    -0.11248894313318662575; ...
    -0.056344313046592789972; ...
     0.0; ...
     0.056344313046592789972; ...
     0.11248894313318662575; ...
     0.16823525155220746498; ...
     0.22338668642896688163; ...
     0.27774982202182431507; ...
     0.33113539325797683309; ...
     0.38335932419873034692; ...
     0.43424374934680255800; ...
     0.48361802694584102756; ...
     0.53131974364437562397; ...
     0.57719571005204581484; ...
     0.62110294673722640294; ...
     0.66290966002478059546; ...
     0.70249620649152707861; ...
     0.73975604435269475868; ...
     0.77459666924148337704; ...
     0.80694053195021761186; ...
     0.83672593816886873550; ...
     0.86390793819369047715; ...
     0.88845923287225699889; ...
     0.91037115695700429250; ...
     0.92965485742974005667; ...
     0.94634285837340290515; ...
     0.96049126870802028342; ...
     0.97218287474858179658; ...
     0.98153114955374010687; ...
     0.98868475754742947994; ...
     0.99383196321275502221; ...
     0.99720625937222195908; ...
     0.99909812496766759766; ...
     0.99987288812035761194 ];

  elseif ( n == 127 )

    x = [ ...
    -0.99998243035489159858; ...
    -0.99987288812035761194; ...
    -0.99959879967191068325; ...
    -0.99909812496766759766; ...
    -0.99831663531840739253; ...
    -0.99720625937222195908; ...
    -0.99572410469840718851; ...
    -0.99383196321275502221; ...
    -0.99149572117810613240; ...
    -0.98868475754742947994; ...
    -0.98537149959852037111; ...
    -0.98153114955374010687; ...
    -0.97714151463970571416; ...
    -0.97218287474858179658; ...
    -0.96663785155841656709; ...
    -0.96049126870802028342; ...
    -0.95373000642576113641; ...
    -0.94634285837340290515; ...
    -0.93832039777959288365; ...
    -0.92965485742974005667; ...
    -0.92034002547001242073; ...
    -0.91037115695700429250; ...
    -0.89974489977694003664; ...
    -0.88845923287225699889; ...
    -0.87651341448470526974; ...
    -0.86390793819369047715; ...
    -0.85064449476835027976; ...
    -0.83672593816886873550; ...
    -0.82215625436498040737; ...
    -0.80694053195021761186; ...
    -0.79108493379984836143; ...
    -0.77459666924148337704; ...
    -0.75748396638051363793; ...
    -0.73975604435269475868; ...
    -0.72142308537009891548; ...
    -0.70249620649152707861; ...
    -0.68298743109107922809; ...
    -0.66290966002478059546; ...
    -0.64227664250975951377; ...
    -0.62110294673722640294; ...
    -0.59940393024224289297; ...
    -0.57719571005204581484; ...
    -0.55449513263193254887; ...
    -0.53131974364437562397; ...
    -0.50768775753371660215; ...
    -0.48361802694584102756; ...
    -0.45913001198983233287; ...
    -0.43424374934680255800; ...
    -0.40897982122988867241; ...
    -0.38335932419873034692; ...
    -0.35740383783153215238; ...
    -0.33113539325797683309; ...
    -0.30457644155671404334; ...
    -0.27774982202182431507; ...
    -0.25067873030348317661; ...
    -0.22338668642896688163; ...
    -0.19589750271110015392; ...
    -0.16823525155220746498; ...
    -0.14042423315256017459; ...
    -0.11248894313318662575; ...
    -0.084454040083710883710; ...
    -0.056344313046592789972; ...
    -0.028184648949745694339; ...
     0.0; ...
     0.028184648949745694339; ...
     0.056344313046592789972; ...
     0.084454040083710883710; ...
     0.11248894313318662575; ...
     0.14042423315256017459; ...
     0.16823525155220746498; ...
     0.19589750271110015392; ...
     0.22338668642896688163; ...
     0.25067873030348317661; ...
     0.27774982202182431507; ...
     0.30457644155671404334; ...
     0.33113539325797683309; ...
     0.35740383783153215238; ...
     0.38335932419873034692; ...
     0.40897982122988867241; ...
     0.43424374934680255800; ...
     0.45913001198983233287; ...
     0.48361802694584102756; ...
     0.50768775753371660215; ...
     0.53131974364437562397; ...
     0.55449513263193254887; ...
     0.57719571005204581484; ...
     0.59940393024224289297; ...
     0.62110294673722640294; ...
     0.64227664250975951377; ...
     0.66290966002478059546; ...
     0.68298743109107922809; ...
     0.70249620649152707861; ...
     0.72142308537009891548; ...
     0.73975604435269475868; ...
     0.75748396638051363793; ...
     0.77459666924148337704; ...
     0.79108493379984836143; ...
     0.80694053195021761186; ...
     0.82215625436498040737; ...
     0.83672593816886873550; ...
     0.85064449476835027976; ...
     0.86390793819369047715; ...
     0.87651341448470526974; ...
     0.88845923287225699889; ...
     0.89974489977694003664; ...
     0.91037115695700429250; ...
     0.92034002547001242073; ...
     0.92965485742974005667; ...
     0.93832039777959288365; ...
     0.94634285837340290515; ...
     0.95373000642576113641; ...
     0.96049126870802028342; ...
     0.96663785155841656709; ...
     0.97218287474858179658; ...
     0.97714151463970571416; ...
     0.98153114955374010687; ...
     0.98537149959852037111; ...
     0.98868475754742947994; ...
     0.99149572117810613240; ...
     0.99383196321275502221; ...
     0.99572410469840718851; ...
     0.99720625937222195908; ...
     0.99831663531840739253; ...
     0.99909812496766759766; ...
     0.99959879967191068325; ...
     0.99987288812035761194; ...
     0.99998243035489159858 ];

  elseif ( n == 255 )

    x = [ ...
    -0.99999759637974846462; ...
    -0.99998243035489159858; ...
    -0.99994399620705437576; ...
    -0.99987288812035761194; ...
    -0.99976049092443204733; ...
    -0.99959879967191068325; ...
    -0.99938033802502358193; ...
    -0.99909812496766759766; ...
    -0.99874561446809511470; ...
    -0.99831663531840739253; ...
    -0.99780535449595727456; ...
    -0.99720625937222195908; ...
    -0.99651414591489027385; ...
    -0.99572410469840718851; ...
    -0.99483150280062100052; ...
    -0.99383196321275502221; ...
    -0.99272134428278861533; ...
    -0.99149572117810613240; ...
    -0.99015137040077015918; ...
    -0.98868475754742947994; ...
    -0.98709252795403406719; ...
    -0.98537149959852037111; ...
    -0.98351865757863272876; ...
    -0.98153114955374010687; ...
    -0.97940628167086268381; ...
    -0.97714151463970571416; ...
    -0.97473445975240266776; ...
    -0.97218287474858179658; ...
    -0.96948465950245923177; ...
    -0.96663785155841656709; ...
    -0.96364062156981213252; ...
    -0.96049126870802028342; ...
    -0.95718821610986096274; ...
    -0.95373000642576113641; ...
    -0.95011529752129487656; ...
    -0.94634285837340290515; ...
    -0.94241156519108305981; ...
    -0.93832039777959288365; ...
    -0.93406843615772578800; ...
    -0.92965485742974005667; ...
    -0.92507893290707565236; ...
    -0.92034002547001242073; ...
    -0.91543758715576504064; ...
    -0.91037115695700429250; ...
    -0.90514035881326159519; ...
    -0.89974489977694003664; ...
    -0.89418456833555902286; ...
    -0.88845923287225699889; ...
    -0.88256884024734190684; ...
    -0.87651341448470526974; ...
    -0.87029305554811390585; ...
    -0.86390793819369047715; ...
    -0.85735831088623215653; ...
    -0.85064449476835027976; ...
    -0.84376688267270860104; ...
    -0.83672593816886873550; ...
    -0.82952219463740140018; ...
    -0.82215625436498040737; ...
    -0.81462878765513741344; ...
    -0.80694053195021761186; ...
    -0.79909229096084140180; ...
    -0.79108493379984836143; ...
    -0.78291939411828301639; ...
    -0.77459666924148337704; ...
    -0.76611781930376009072; ...
    -0.75748396638051363793; ...
    -0.74869629361693660282; ...
    -0.73975604435269475868; ...
    -0.73066452124218126133; ...
    -0.72142308537009891548; ...
    -0.71203315536225203459; ...
    -0.70249620649152707861; ...
    -0.69281376977911470289; ...
    -0.68298743109107922809; ...
    -0.67301883023041847920; ...
    -0.66290966002478059546; ...
    -0.65266166541001749610; ...
    -0.64227664250975951377; ...
    -0.63175643771119423041; ...
    -0.62110294673722640294; ...
    -0.61031811371518640016; ...
    -0.59940393024224289297; ...
    -0.58836243444766254143; ...
    -0.57719571005204581484; ...
    -0.56590588542365442262; ...
    -0.55449513263193254887; ...
    -0.54296566649831149049; ...
    -0.53131974364437562397; ...
    -0.51955966153745702199; ...
    -0.50768775753371660215; ...
    -0.49570640791876146017; ...
    -0.48361802694584102756; ...
    -0.47142506587165887693; ...
    -0.45913001198983233287; ...
    -0.44673538766202847374; ...
    -0.43424374934680255800; ...
    -0.42165768662616330006; ...
    -0.40897982122988867241; ...
    -0.39621280605761593918; ...
    -0.38335932419873034692; ...
    -0.37042208795007823014; ...
    -0.35740383783153215238; ...
    -0.34430734159943802278; ...
    -0.33113539325797683309; ...
    -0.31789081206847668318; ...
    -0.30457644155671404334; ...
    -0.29119514851824668196; ...
    -0.27774982202182431507; ...
    -0.26424337241092676194; ...
    -0.25067873030348317661; ...
    -0.23705884558982972721; ...
    -0.22338668642896688163; ...
    -0.20966523824318119477; ...
    -0.19589750271110015392; ...
    -0.18208649675925219825; ...
    -0.16823525155220746498; ...
    -0.15434681148137810869; ...
    -0.14042423315256017459; ...
    -0.12647058437230196685; ...
    -0.11248894313318662575; ...
    -0.098482396598119202090; ...
    -0.084454040083710883710; ...
    -0.070406976042855179063; ...
    -0.056344313046592789972; ...
    -0.042269164765363603212; ...
    -0.028184648949745694339; ...
    -0.014093886410782462614; ...
    0.0; ...
    0.014093886410782462614; ...
    0.028184648949745694339; ...
    0.042269164765363603212; ...
    0.056344313046592789972; ...
    0.070406976042855179063; ...
    0.084454040083710883710; ...
    0.098482396598119202090; ...
    0.11248894313318662575; ...
    0.12647058437230196685; ...
    0.14042423315256017459; ...
    0.15434681148137810869; ...
    0.16823525155220746498; ...
    0.18208649675925219825; ...
    0.19589750271110015392; ...
    0.20966523824318119477; ...
    0.22338668642896688163; ...
    0.23705884558982972721; ...
    0.25067873030348317661; ...
    0.26424337241092676194; ...
    0.27774982202182431507; ...
    0.29119514851824668196; ...
    0.30457644155671404334; ...
    0.31789081206847668318; ...
    0.33113539325797683309; ...
    0.34430734159943802278; ...
    0.35740383783153215238; ...
    0.37042208795007823014; ...
    0.38335932419873034692; ...
    0.39621280605761593918; ...
    0.40897982122988867241; ...
    0.42165768662616330006; ...
    0.43424374934680255800; ...
    0.44673538766202847374; ...
    0.45913001198983233287; ...
    0.47142506587165887693; ...
    0.48361802694584102756; ...
    0.49570640791876146017; ...
    0.50768775753371660215; ...
    0.51955966153745702199; ...
    0.53131974364437562397; ...
    0.54296566649831149049; ...
    0.55449513263193254887; ...
    0.56590588542365442262; ...
    0.57719571005204581484; ...
    0.58836243444766254143; ...
    0.59940393024224289297; ...
    0.61031811371518640016; ...
    0.62110294673722640294; ...
    0.63175643771119423041; ...
    0.64227664250975951377; ...
    0.65266166541001749610; ...
    0.66290966002478059546; ...
    0.67301883023041847920; ...
    0.68298743109107922809; ...
    0.69281376977911470289; ...
    0.70249620649152707861; ...
    0.71203315536225203459; ...
    0.72142308537009891548; ...
    0.73066452124218126133; ...
    0.73975604435269475868; ...
    0.74869629361693660282; ...
    0.75748396638051363793; ...
    0.76611781930376009072; ...
    0.77459666924148337704; ...
    0.78291939411828301639; ...
    0.79108493379984836143; ...
    0.79909229096084140180; ...
    0.80694053195021761186; ...
    0.81462878765513741344; ...
    0.82215625436498040737; ...
    0.82952219463740140018; ...
    0.83672593816886873550; ...
    0.84376688267270860104; ...
    0.85064449476835027976; ...
    0.85735831088623215653; ...
    0.86390793819369047715; ...
    0.87029305554811390585; ...
    0.87651341448470526974; ...
    0.88256884024734190684; ...
    0.88845923287225699889; ...
    0.89418456833555902286; ...
    0.89974489977694003664; ...
    0.90514035881326159519; ...
    0.91037115695700429250; ...
    0.91543758715576504064; ...
    0.92034002547001242073; ...
    0.92507893290707565236; ...
    0.92965485742974005667; ...
    0.93406843615772578800; ...
    0.93832039777959288365; ...
    0.94241156519108305981; ...
    0.94634285837340290515; ...
    0.95011529752129487656; ...
    0.95373000642576113641; ...
    0.95718821610986096274; ...
    0.96049126870802028342; ...
    0.96364062156981213252; ...
    0.96663785155841656709; ...
    0.96948465950245923177; ...
    0.97218287474858179658; ...
    0.97473445975240266776; ...
    0.97714151463970571416; ...
    0.97940628167086268381; ...
    0.98153114955374010687; ...
    0.98351865757863272876; ...
    0.98537149959852037111; ...
    0.98709252795403406719; ...
    0.98868475754742947994; ...
    0.99015137040077015918; ...
    0.99149572117810613240; ...
    0.99272134428278861533; ...
    0.99383196321275502221; ...
    0.99483150280062100052; ...
    0.99572410469840718851; ...
    0.99651414591489027385; ...
    0.99720625937222195908; ...
    0.99780535449595727456; ...
    0.99831663531840739253; ...
    0.99874561446809511470; ...
    0.99909812496766759766; ...
    0.99938033802502358193; ...
    0.99959879967191068325; ...
    0.99976049092443204733; ...
    0.99987288812035761194; ...
    0.99994399620705437576; ...
    0.99998243035489159858; ...
    0.99999759637974846462 ];

  elseif ( n == 511 )

    x = [ ...
    -0.999999672956734384381; ...
    -0.999997596379748464620; ...
    -0.999992298136257588028; ...
    -0.999982430354891598580; ...
    -0.999966730098486276883; ...
    -0.999943996207054375764; ...
    -0.999913081144678282800; ...
    -0.999872888120357611938; ...
    -0.999822363679787739196; ...
    -0.999760490924432047330; ...
    -0.999686286448317731776; ...
    -0.999598799671910683252; ...
    -0.999497112467187190535; ...
    -0.999380338025023581928; ...
    -0.999247618943342473599; ...
    -0.999098124967667597662; ...
    -0.998931050830810562236; ...
    -0.998745614468095114704; ...
    -0.998541055697167906027; ...
    -0.998316635318407392531; ...
    -0.998071634524930323302; ...
    -0.997805354495957274562; ...
    -0.997517116063472399965; ...
    -0.997206259372221959076; ...
    -0.996872143485260161299; ...
    -0.996514145914890273849; ...
    -0.996131662079315037786; ...
    -0.995724104698407188509; ...
    -0.995290903148810302261; ...
    -0.994831502800621000519; ...
    -0.994345364356723405931; ...
    -0.993831963212755022209; ...
    -0.993290788851684966211; ...
    -0.992721344282788615328; ...
    -0.992123145530863117683; ...
    -0.991495721178106132399; ...
    -0.990838611958294243677; ...
    -0.990151370400770159181; ...
    -0.989433560520240838716; ...
    -0.988684757547429479939; ...
    -0.987904547695124280467; ...
    -0.987092527954034067190; ...
    -0.986248305913007552681; ...
    -0.985371499598520371114; ...
    -0.984461737328814534596; ...
    -0.983518657578632728762; ...
    -0.982541908851080604251; ...
    -0.981531149553740106867; ...
    -0.980486047876721339416; ...
    -0.979406281670862683806; ...
    -0.978291538324758539526; ...
    -0.977141514639705714156; ...
    -0.975955916702011753129; ...
    -0.974734459752402667761; ...
    -0.973476868052506926773; ...
    -0.972182874748581796578; ...
    -0.970852221732792443256; ...
    -0.969484659502459231771; ...
    -0.968079947017759947964; ...
    -0.966637851558416567092; ...
    -0.965158148579915665979; ...
    -0.963640621569812132521; ...
    -0.962085061904651475741; ...
    -0.960491268708020283423; ...
    -0.958859048710200221356; ...
    -0.957188216109860962736; ...
    -0.955478592438183697574; ...
    -0.953730006425761136415; ...
    -0.951942293872573589498; ...
    -0.950115297521294876558; ...
    -0.948248866934137357063; ...
    -0.946342858373402905148; ...
    -0.944397134685866648591; ...
    -0.942411565191083059813; ...
    -0.940386025573669721370; ...
    -0.938320397779592883655; ...
    -0.936214569916450806625; ...
    -0.934068436157725787999; ...
    -0.931881896650953639345; ...
    -0.929654857429740056670; ...
    -0.927387230329536696843; ...
    -0.925078932907075652364; ...
    -0.922729888363349241523; ...
    -0.920340025470012420730; ...
    -0.917909278499077501636; ...
    -0.915437587155765040644; ...
    -0.912924896514370590080; ...
    -0.910371156957004292498; ...
    -0.907776324115058903624; ...
    -0.905140358813261595189; ...
    -0.902463227016165675048; ...
    -0.899744899776940036639; ...
    -0.896985353188316590376; ...
    -0.894184568335559022859; ...
    -0.891342531251319871666; ...
    -0.888459232872256998890; ...
    -0.885534668997285008926; ...
    -0.882568840247341906842; ...
    -0.879561752026556262568; ...
    -0.876513414484705269742; ...
    -0.873423842480859310192; ...
    -0.870293055548113905851; ...
    -0.867121077859315215614; ...
    -0.863907938193690477146; ...
    -0.860653669904299969802; ...
    -0.857358310886232156525; ...
    -0.854021903545468625813; ...
    -0.850644494768350279758; ...
    -0.847226135891580884381; ...
    -0.843766882672708601038; ...
    -0.840266795261030442350; ...
    -0.836725938168868735503; ...
    -0.833144380243172624728; ...
    -0.829522194637401400178; ...
    -0.825859458783650001088; ...
    -0.822156254364980407373; ...
    -0.818412667287925807395; ...
    -0.814628787655137413436; ...
    -0.810804709738146594361; ...
    -0.806940531950217611856; ...
    -0.803036356819268687782; ...
    -0.799092290960841401800; ...
    -0.795108445051100526780; ...
    -0.791084933799848361435; ...
    -0.787021875923539422170; ...
    -0.782919394118283016385; ...
    -0.778777615032822744702; ...
    -0.774596669241483377036; ...
    -0.770376691217076824278; ...
    -0.766117819303760090717; ...
    -0.761820195689839149173; ...
    -0.757483966380513637926; ...
    -0.753109281170558142523; ...
    -0.748696293616936602823; ...
    -0.744245161011347082309; ...
    -0.739756044352694758677; ...
    -0.735229108319491547663; ...
    -0.730664521242181261329; ...
    -0.726062455075389632685; ...
    -0.721423085370098915485; ...
    -0.716746591245747095767; ...
    -0.712033155362252034587; ...
    -0.707282963891961103412; ...
    -0.702496206491527078610; ...
    -0.697673076273711232906; ...
    -0.692813769779114702895; ...
    -0.687918486947839325756; ...
    -0.682987431091079228087; ...
    -0.678020808862644517838; ...
    -0.673018830230418479199; ...
    -0.667981708447749702165; ...
    -0.662909660024780595461; ...
    -0.657802904699713735422; ...
    -0.652661665410017496101; ...
    -0.647486168263572388782; ...
    -0.642276642509759513774; ...
    -0.637033320510492495071; ...
    -0.631756437711194230414; ...
    -0.626446232611719746542; ...
    -0.621102946737226402941; ...
    -0.615726824608992638014; ...
    -0.610318113715186400156; ...
    -0.604877064481584353319; ...
    -0.599403930242242892974; ...
    -0.593898967210121954393; ...
    -0.588362434447662541434; ...
    -0.582794593837318850840; ...
    -0.577195710052045814844; ...
    -0.571566050525742833992; ...
    -0.565905885423654422623; ...
    -0.560215487612728441818; ...
    -0.554495132631932548866; ...
    -0.548745098662529448608; ...
    -0.542965666498311490492; ...
    -0.537157119515795115982; ...
    -0.531319743644375623972; ...
    -0.525453827336442687395; ...
    -0.519559661537457021993; ...
    -0.513637539655988578507; ...
    -0.507687757533716602155; ...
    -0.501710613415391878251; ...
    -0.495706407918761460170; ...
    -0.489675444004456155436; ...
    -0.483618026945841027562; ...
    -0.477534464298829155284; ...
    -0.471425065871658876934; ...
    -0.465290143694634735858; ...
    -0.459130011989832332874; ...
    -0.452944987140767283784; ...
    -0.446735387662028473742; ...
    -0.440501534168875795783; ...
    -0.434243749346802558002; ...
    -0.427962357921062742583; ...
    -0.421657686626163300056; ...
    -0.415330064175321663764; ...
    -0.408979821229888672409; ...
    -0.402607290368737092671; ...
    -0.396212806057615939183; ...
    -0.389796704618470795479; ...
    -0.383359324198730346916; ...
    -0.376901004740559344802; ...
    -0.370422087950078230138; ...
    -0.363922917266549655269; ...
    -0.357403837831532152376; ...
    -0.350865196458001209011; ...
    -0.344307341599438022777; ...
    -0.337730623318886219621; ...
    -0.331135393257976833093; ...
    -0.324522004605921855207; ...
    -0.317890812068476683182; ...
    -0.311242171836871800300; ...
    -0.304576441556714043335; ...
    -0.297893980296857823437; ...
    -0.291195148518246681964; ...
    -0.284480308042725577496; ...
    -0.277749822021824315065; ...
    -0.271004054905512543536; ...
    -0.264243372410926761945; ...
    -0.257468141491069790481; ...
    -0.250678730303483176613; ...
    -0.243875508178893021593; ...
    -0.237058845589829727213; ...
    -0.230229114119222177156; ...
    -0.223386686428966881628; ...
    -0.216531936228472628081; ...
    -0.209665238243181194766; ...
    -0.202786968183064697557; ...
    -0.195897502711100153915; ...
    -0.188997219411721861059; ...
    -0.182086496759252198246; ...
    -0.175165714086311475707; ...
    -0.168235251552207464982; ...
    -0.161295490111305257361; ...
    -0.154346811481378108692; ...
    -0.147389598111939940054; ...
    -0.140424233152560174594; ...
    -0.133451100421161601344; ...
    -0.126470584372301966851; ...
    -0.119483070065440005133; ...
    -0.112488943133186625746; ...
    -0.105488589749541988533; ...
    -0.984823965981192020903E-01; ...
    -0.914707508403553909095E-01; ...
    -0.844540400837108837102E-01; ...
    -0.774326523498572825675E-01; ...
    -0.704069760428551790633E-01; ...
    -0.633773999173222898797E-01; ...
    -0.563443130465927899720E-01; ...
    -0.493081047908686267156E-01; ...
    -0.422691647653636032124E-01; ...
    -0.352278828084410232603E-01; ...
    -0.281846489497456943394E-01; ...
    -0.211398533783310883350E-01; ...
    -0.140938864107824626142E-01; ...
    -0.704713845933674648514E-02; ...
    +0.000000000000000000000; ...
    +0.704713845933674648514E-02; ...
    +0.140938864107824626142E-01; ...
    +0.211398533783310883350E-01; ...
    +0.281846489497456943394E-01; ...
    +0.352278828084410232603E-01; ...
    +0.422691647653636032124E-01; ...
    +0.493081047908686267156E-01; ...
    +0.563443130465927899720E-01; ...
    +0.633773999173222898797E-01; ...
    +0.704069760428551790633E-01; ...
    +0.774326523498572825675E-01; ...
    +0.844540400837108837102E-01; ...
    +0.914707508403553909095E-01; ...
    +0.984823965981192020903E-01; ...
    +0.105488589749541988533; ...
    +0.112488943133186625746; ...
    +0.119483070065440005133; ...
    +0.126470584372301966851; ...
    +0.133451100421161601344; ...
    +0.140424233152560174594; ...
    +0.147389598111939940054; ...
    +0.154346811481378108692; ...
    +0.161295490111305257361; ...
    +0.168235251552207464982; ...
    +0.175165714086311475707; ...
    +0.182086496759252198246; ...
    +0.188997219411721861059; ...
    +0.195897502711100153915; ...
    +0.202786968183064697557; ...
    +0.209665238243181194766; ...
    +0.216531936228472628081; ...
    +0.223386686428966881628; ...
    +0.230229114119222177156; ...
    +0.237058845589829727213; ...
    +0.243875508178893021593; ...
    +0.250678730303483176613; ...
    +0.257468141491069790481; ...
    +0.264243372410926761945; ...
    +0.271004054905512543536; ...
    +0.277749822021824315065; ...
    +0.284480308042725577496; ...
    +0.291195148518246681964; ...
    +0.297893980296857823437; ...
    +0.304576441556714043335; ...
    +0.311242171836871800300; ...
    +0.317890812068476683182; ...
    +0.324522004605921855207; ...
    +0.331135393257976833093; ...
    +0.337730623318886219621; ...
    +0.344307341599438022777; ...
    +0.350865196458001209011; ...
    +0.357403837831532152376; ...
    +0.363922917266549655269; ...
    +0.370422087950078230138; ...
    +0.376901004740559344802; ...
    +0.383359324198730346916; ...
    +0.389796704618470795479; ...
    +0.396212806057615939183; ...
    +0.402607290368737092671; ...
    +0.408979821229888672409; ...
    +0.415330064175321663764; ...
    +0.421657686626163300056; ...
    +0.427962357921062742583; ...
    +0.434243749346802558002; ...
    +0.440501534168875795783; ...
    +0.446735387662028473742; ...
    +0.452944987140767283784; ...
    +0.459130011989832332874; ...
    +0.465290143694634735858; ...
    +0.471425065871658876934; ...
    +0.477534464298829155284; ...
    +0.483618026945841027562; ...
    +0.489675444004456155436; ...
    +0.495706407918761460170; ...
    +0.501710613415391878251; ...
    +0.507687757533716602155; ...
    +0.513637539655988578507; ...
    +0.519559661537457021993; ...
    +0.525453827336442687395; ...
    +0.531319743644375623972; ...
    +0.537157119515795115982; ...
    +0.542965666498311490492; ...
    +0.548745098662529448608; ...
    +0.554495132631932548866; ...
    +0.560215487612728441818; ...
    +0.565905885423654422623; ...
    +0.571566050525742833992; ...
    +0.577195710052045814844; ...
    +0.582794593837318850840; ...
    +0.588362434447662541434; ...
    +0.593898967210121954393; ...
    +0.599403930242242892974; ...
    +0.604877064481584353319; ...
    +0.610318113715186400156; ...
    +0.615726824608992638014; ...
    +0.621102946737226402941; ...
    +0.626446232611719746542; ...
    +0.631756437711194230414; ...
    +0.637033320510492495071; ...
    +0.642276642509759513774; ...
    +0.647486168263572388782; ...
    +0.652661665410017496101; ...
    +0.657802904699713735422; ...
    +0.662909660024780595461; ...
    +0.667981708447749702165; ...
    +0.673018830230418479199; ...
    +0.678020808862644517838; ...
    +0.682987431091079228087; ...
    +0.687918486947839325756; ...
    +0.692813769779114702895; ...
    +0.697673076273711232906; ...
    +0.702496206491527078610; ...
    +0.707282963891961103412; ...
    +0.712033155362252034587; ...
    +0.716746591245747095767; ...
    +0.721423085370098915485; ...
    +0.726062455075389632685; ...
    +0.730664521242181261329; ...
    +0.735229108319491547663; ...
    +0.739756044352694758677; ...
    +0.744245161011347082309; ...
    +0.748696293616936602823; ...
    +0.753109281170558142523; ...
    +0.757483966380513637926; ...
    +0.761820195689839149173; ...
    +0.766117819303760090717; ...
    +0.770376691217076824278; ...
    +0.774596669241483377036; ...
    +0.778777615032822744702; ...
    +0.782919394118283016385; ...
    +0.787021875923539422170; ...
    +0.791084933799848361435; ...
    +0.795108445051100526780; ...
    +0.799092290960841401800; ...
    +0.803036356819268687782; ...
    +0.806940531950217611856; ...
    +0.810804709738146594361; ...
    +0.814628787655137413436; ...
    +0.818412667287925807395; ...
    +0.822156254364980407373; ...
    +0.825859458783650001088; ...
    +0.829522194637401400178; ...
    +0.833144380243172624728; ...
    +0.836725938168868735503; ...
    +0.840266795261030442350; ...
    +0.843766882672708601038; ...
    +0.847226135891580884381; ...
    +0.850644494768350279758; ...
    +0.854021903545468625813; ...
    +0.857358310886232156525; ...
    +0.860653669904299969802; ...
    +0.863907938193690477146; ...
    +0.867121077859315215614; ...
    +0.870293055548113905851; ...
    +0.873423842480859310192; ...
    +0.876513414484705269742; ...
    +0.879561752026556262568; ...
    +0.882568840247341906842; ...
    +0.885534668997285008926; ...
    +0.888459232872256998890; ...
    +0.891342531251319871666; ...
    +0.894184568335559022859; ...
    +0.896985353188316590376; ...
    +0.899744899776940036639; ...
    +0.902463227016165675048; ...
    +0.905140358813261595189; ...
    +0.907776324115058903624; ...
    +0.910371156957004292498; ...
    +0.912924896514370590080; ...
    +0.915437587155765040644; ...
    +0.917909278499077501636; ...
    +0.920340025470012420730; ...
    +0.922729888363349241523; ...
    +0.925078932907075652364; ...
    +0.927387230329536696843; ...
    +0.929654857429740056670; ...
    +0.931881896650953639345; ...
    +0.934068436157725787999; ...
    +0.936214569916450806625; ...
    +0.938320397779592883655; ...
    +0.940386025573669721370; ...
    +0.942411565191083059813; ...
    +0.944397134685866648591; ...
    +0.946342858373402905148; ...
    +0.948248866934137357063; ...
    +0.950115297521294876558; ...
    +0.951942293872573589498; ...
    +0.953730006425761136415; ...
    +0.955478592438183697574; ...
    +0.957188216109860962736; ...
    +0.958859048710200221356; ...
    +0.960491268708020283423; ...
    +0.962085061904651475741; ...
    +0.963640621569812132521; ...
    +0.965158148579915665979; ...
    +0.966637851558416567092; ...
    +0.968079947017759947964; ...
    +0.969484659502459231771; ...
    +0.970852221732792443256; ...
    +0.972182874748581796578; ...
    +0.973476868052506926773; ...
    +0.974734459752402667761; ...
    +0.975955916702011753129; ...
    +0.977141514639705714156; ...
    +0.978291538324758539526; ...
    +0.979406281670862683806; ...
    +0.980486047876721339416; ...
    +0.981531149553740106867; ...
    +0.982541908851080604251; ...
    +0.983518657578632728762; ...
    +0.984461737328814534596; ...
    +0.985371499598520371114; ...
    +0.986248305913007552681; ...
    +0.987092527954034067190; ...
    +0.987904547695124280467; ...
    +0.988684757547429479939; ...
    +0.989433560520240838716; ...
    +0.990151370400770159181; ...
    +0.990838611958294243677; ...
    +0.991495721178106132399; ...
    +0.992123145530863117683; ...
    +0.992721344282788615328; ...
    +0.993290788851684966211; ...
    +0.993831963212755022209; ...
    +0.994345364356723405931; ...
    +0.994831502800621000519; ...
    +0.995290903148810302261; ...
    +0.995724104698407188509; ...
    +0.996131662079315037786; ...
    +0.996514145914890273849; ...
    +0.996872143485260161299; ...
    +0.997206259372221959076; ...
    +0.997517116063472399965; ...
    +0.997805354495957274562; ...
    +0.998071634524930323302; ...
    +0.998316635318407392531; ...
    +0.998541055697167906027; ...
    +0.998745614468095114704; ...
    +0.998931050830810562236; ...
    +0.999098124967667597662; ...
    +0.999247618943342473599; ...
    +0.999380338025023581928; ...
    +0.999497112467187190535; ...
    +0.999598799671910683252; ...
    +0.999686286448317731776; ...
    +0.999760490924432047330; ...
    +0.999822363679787739196; ...
    +0.999872888120357611938; ...
    +0.999913081144678282800; ...
    +0.999943996207054375764; ...
    +0.999966730098486276883; ...
    +0.999982430354891598580; ...
    +0.999992298136257588028; ...
    +0.999997596379748464620; ...
    +0.999999672956734384381 ];

  else

    fprintf ( 1, '\n' );
    fprintf ( 1, 'PATTERSON_LOOKUP_POINTS - Fatal error!\n' );
    fprintf ( 1, '  Illegal input value of N = %d\n', n );
    error ( 'PATTERSON_LOOKUP_POINTS - Fatal error!' );

  end

  return
end
