subroutine design_00_001_3d ( x ) ! !******************************************************************************* ! !! DESIGN_00_001_3D returns a 0-design of 1 point in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,1), the coordinates of the points. ! implicit none ! real x(3,1) ! x(1:3,1:1) = reshape ( (/ & 1.0E+00, 0.0E+00, 0.0E+00 /), (/ 3, 1 /) ) return end subroutine design_01_002_3d ( x ) ! !******************************************************************************* ! !! DESIGN_01_002_3D returns a 1-design of 2 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,2), the coordinates of the points. ! implicit none ! real x(3,2) ! x(1:3,1:2) = reshape ( (/ & 1.0E+00, 0.0E+00, 0.0E+00, & -1.0E+00, 0.0E+00, 0.0E+00 /), (/ 3, 2 /) ) return end subroutine design_02_004_3d ( x ) ! !******************************************************************************* ! !! DESIGN_02_004_3D returns a 2-design of 4 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,4), the coordinates of the points. ! implicit none ! real, parameter :: a = 0.577350269189625763E+00 real x(3,4) ! x(1:3,1:4) = reshape ( (/ & a, a, a, & a, -a, -a, & -a, a, -a, & -a, -a, a /), (/ 3, 4 /) ) return end subroutine design_03_006_3d ( x ) ! !******************************************************************************* ! !! DESIGN_03_006_3D returns a 3-design of 6 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,6), the coordinates of the points. ! implicit none ! real x(3,6) ! x(1:3,1:6) = reshape ( (/ & 1.0E+00, 0.0E+00, 0.0E+00, & -1.0E+00, 0.0E+00, 0.0E+00, & 0.0E+00, 1.0E+00, 0.0E+00, & 0.0E+00,-1.0E+00, 0.0E+00, & 0.0E+00, 0.0E+00, 1.0E+00, & 0.0E+00, 0.0E+00, -1.0E+00 /), (/ 3, 6 /) ) return end subroutine design_04_014_3d ( x ) ! !******************************************************************************* ! !! DESIGN_04_014_3D returns a 4-design of 14 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,14), the coordinates of the points. ! implicit none ! real x(3,14) ! x(1:3,1:14) = reshape ( (/ & 1.0E+00, 0.0E+00, 0.0E+00, & 0.5947189772040725E+00, 0.1776539926025823E+00, 0.7840589244857197E+00, & 0.5947189772040725E+00, -0.7678419429698292E+00, -0.2381765915652909E+00, & 0.5947189772040725E+00, 0.590187950367247E+00, -0.5458823329204288E+00, & -0.5947189772040725E+00, 0.1776539926025823E+00, -0.7840589244857197E+00, & -0.5947189772040725E+00, 0.590187950367247E+00, 0.5458823329204288E+00, & -0.5947189772040725E+00, -0.7678419429698292E+00, 0.2381765915652909E+00, & 0.3012536847870683E+00, 0.879474443923065E+00, 0.3684710570566285E+00, & 0.3012536847870683E+00, -0.7588425179318781E+00, 0.5774116818882528E+00, & 0.3012536847870683E+00, -0.1206319259911869E+00, -0.9458827389448813E+00, & -0.3012536847870683E+00, 0.879474443923065E+00, -0.3684710570566285E+00, & -0.3012536847870683E+00, -0.1206319259911869E+00, 0.9458827389448813E+00, & -0.3012536847870683E+00, -0.7588425179318781E+00, -0.5774116818882528E+00, & -1.0E+00, 0.0E+00, 0.0E+00 /), & (/ 3, 14 /) ) return end subroutine design_05_012_3d ( x ) ! !******************************************************************************* ! !! DESIGN_05_012_3D returns a 5-design of 12 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 07 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,12), the coordinates of the points. ! implicit none ! real x(3,12) ! x(1:3,1:12) = reshape ( (/ & 0.850650808352E+00, 0.0E+00, -0.525731112119E+00, & 0.525731112119E+00, -0.850650808352E+00, 0.000000000000E+00, & 0.0E+00, -0.525731112119E+00, 0.850650808352E+00, & 0.850650808352E+00, 0.0E+00, 0.525731112119E+00, & -0.525731112119E+00, -0.850650808352E+00, 0.0E+00, & 0.0E+00, 0.525731112119E+00, -0.850650808352E+00, & -0.850650808352E+00, 0.0E+00, -0.525731112119E+00, & -0.525731112119E+00, 0.850650808352E+00, 0.0E+00, & 0.0E+00, 0.525731112119E+00, 0.850650808352E+00, & -0.850650808352E+00, 0.0E+00, 0.525731112119E+00, & 0.525731112119E+00, 0.850650808352E+00, 0.0E+00, & 0.0E+00, -0.525731112119E+00, -0.850650808352E+00 /), & (/ 3, 12 /) ) return end subroutine design_06_026_3d ( x ) ! !******************************************************************************* ! !! DESIGN_06_026_3D returns a 6-design of 26 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,26), the coordinates of the points. ! implicit none ! real x(3,26) ! x(1:3,1:26) = reshape ( (/ & -0.6156289423339210E+00, 0.1008195633550640E+00, 0.7815602478412730E+00, & 0.3951267761987170E+00, 0.4827405208135130E+00, 0.7815602473869220E+00, & 0.2205021660506020E+00, -0.5835600880219350E+00, 0.7815602461965580E+00, & -0.4164742585347590E+00, 0.6658869344429950E+00, 0.6189860923445970E+00, & -0.3684378761516490E+00, -0.6936207556288800E+00, 0.6189860893248600E+00, & 0.7849121331270050E+00, 0.2773382046045800E-01, 0.6189860890784880E+00, & -0.9753444939429849E+00, 0.2176679667586930E+00, 0.3638371039680900E-01, & 0.6761782314481880E+00, 0.7358391298492950E+00, 0.3638370924238100E-01, & 0.2991662611656320E+00, -0.9535070916939770E+00, 0.3638370884709700E-01, & 0.7506752044088399E+00, -0.5662857931564620E+00, 0.3403044783056840E+00, & 0.1150802794034220E+00, 0.9332466938773990E+00, 0.3403044778714140E+00, & -0.8657554869972310E+00, -0.3669608990989080E+00, 0.3403044743559930E+00, & 0.0E+00, -0.0E+00, 1.0000000000000000E+00, & -0.0E+00, -0.0E+00, -1.0000000000000000E+00, & 0.8657554869972310E+00, -0.3669608990989070E+00, -0.3403044743559920E+00, & -0.1150802794034210E+00, 0.9332466938773980E+00, -0.3403044778714150E+00, & -0.7506752044088399E+00, -0.5662857931564620E+00, -0.3403044783056840E+00, & -0.2991662611656320E+00, -0.9535070916939770E+00, -0.3638370884709700E-01, & -0.6761782314481870E+00, 0.7358391298492950E+00, -0.3638370924238000E-01, & 0.9753444939429849E+00, 0.2176679667586940E+00, -0.3638371039681000E-01, & -0.7849121331270040E+00, 0.2773382046045900E-01, -0.6189860890784890E+00, & 0.3684378761516490E+00, -0.6936207556288810E+00, -0.6189860893248590E+00, & 0.4164742585347590E+00, 0.6658869344429950E+00, -0.6189860923445970E+00, & -0.2205021660506030E+00, -0.5835600880219350E+00, -0.7815602461965580E+00, & -0.3951267761987180E+00, 0.4827405208135130E+00, -0.7815602473869220E+00, & 0.6156289423339210E+00, 0.1008195633550640E+00, -0.7815602478412730E+00 & /), (/ 3, 26 /) ) return end subroutine design_07_024_3d ( x ) ! !******************************************************************************* ! !! DESIGN_07_024_3D returns a 7-design of 24 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,24), the coordinates of the points. ! implicit none ! real x(3,24) ! x(1:3,1:24) = reshape ( (/ & 0.8662468181078205913835980E+00, 0.4225186537611115291185464E+00, & 0.2666354015167047203315344E+00, & 0.8662468181078205913835980E+00, -0.4225186537611115291185464E+00, & -0.2666354015167047203315344E+00, & 0.8662468181078205913835980E+00, 0.2666354015167047203315344E+00, & -0.4225186537611115291185464E+00, & 0.8662468181078205913835980E+00, -0.2666354015167047203315344E+00, & 0.4225186537611115291185464E+00, & -0.8662468181078205913835980E+00, 0.4225186537611115291185464E+00, & -0.2666354015167047203315344E+00, & -0.8662468181078205913835980E+00, -0.4225186537611115291185464E+00, & 0.2666354015167047203315344E+00, & -0.8662468181078205913835980E+00, 0.2666354015167047203315344E+00, & 0.4225186537611115291185464E+00, & -0.8662468181078205913835980E+00, -0.2666354015167047203315344E+00, & -0.4225186537611115291185464E+00, & 0.2666354015167047203315344E+00, 0.8662468181078205913835980E+00, & 0.4225186537611115291185464E+00, & -0.2666354015167047203315344E+00, 0.8662468181078205913835980E+00, & -0.4225186537611115291185464E+00, & -0.4225186537611115291185464E+00, 0.8662468181078205913835980E+00, & 0.2666354015167047203315344E+00, & 0.4225186537611115291185464E+00, 0.8662468181078205913835980E+00, & -0.2666354015167047203315344E+00, & -0.2666354015167047203315344E+00, -0.8662468181078205913835980E+00, & 0.4225186537611115291185464E+00, & 0.2666354015167047203315344E+00, -0.8662468181078205913835980E+00, & -0.4225186537611115291185464E+00, & 0.4225186537611115291185464E+00, -0.8662468181078205913835980E+00, & 0.2666354015167047203315344E+00, & -0.4225186537611115291185464E+00, -0.8662468181078205913835980E+00, & -0.2666354015167047203315344E+00, & 0.4225186537611115291185464E+00, 0.2666354015167047203315344E+00, & 0.8662468181078205913835980E+00, & -0.4225186537611115291185464E+00, -0.2666354015167047203315344E+00, & 0.8662468181078205913835980E+00, & 0.2666354015167047203315344E+00, -0.4225186537611115291185464E+00, & 0.8662468181078205913835980E+00, & -0.2666354015167047203315344E+00, 0.4225186537611115291185464E+00, & 0.8662468181078205913835980E+00, & 0.4225186537611115291185464E+00, -0.2666354015167047203315344E+00, & -0.8662468181078205913835980E+00, & -0.4225186537611115291185464E+00, 0.2666354015167047203315344E+00, & -0.8662468181078205913835980E+00, & 0.2666354015167047203315344E+00, 0.4225186537611115291185464E+00, & -0.8662468181078205913835980E+00, & -0.2666354015167047203315344E+00, -0.4225186537611115291185464E+00, & -0.8662468181078205913835980E+00 & /), (/ 3, 24 /) ) return end subroutine design_08_036_3d ( x ) ! !******************************************************************************* ! !! DESIGN_08_036_3D returns an 8-design of 36 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,36), the coordinates of the points. ! implicit none ! real x(3,36) ! x(1:3,1:36) = reshape ( (/ & 0.5074754464108170E+00, -0.3062000132395710E+00, 0.8054254920116630E+00, & -0.3062000132395690E+00, 0.8054254920116630E+00, 0.5074754464108170E+00, & -0.5074754464108170E+00, 0.3062000132395700E+00, 0.8054254920116630E+00, & 0.8054254920116630E+00, 0.5074754464108170E+00, -0.3062000132395690E+00, & 0.3062000132395690E+00, 0.8054254920116640E+00, -0.5074754464108170E+00, & 0.8054254920116630E+00, -0.5074754464108170E+00, 0.3062000132395690E+00, & 0.3062000132395690E+00, -0.8054254920116630E+00, 0.5074754464108160E+00, & -0.8054254920116630E+00, -0.5074754464108170E+00, -0.3062000132395690E+00, & -0.3062000132395700E+00, -0.8054254920116640E+00, -0.5074754464108160E+00, & -0.8054254920116630E+00, 0.5074754464108180E+00, 0.3062000132395690E+00, & 0.5074754464108170E+00, 0.3062000132395700E+00, -0.8054254920116630E+00, & -0.5074754464108170E+00, -0.3062000132395700E+00, -0.8054254920116630E+00, & 0.6263636702652710E+00, -0.2435277754091940E+00, -0.7405152092807200E+00, & -0.2435277754091950E+00, -0.7405152092807200E+00, 0.6263636702652710E+00, & -0.6263636702652710E+00, 0.2435277754091940E+00, -0.7405152092807200E+00, & -0.7405152092807200E+00, 0.6263636702652700E+00, -0.2435277754091950E+00, & 0.2435277754091950E+00, -0.7405152092807190E+00, -0.6263636702652710E+00, & -0.7405152092807200E+00, -0.6263636702652700E+00, 0.2435277754091950E+00, & 0.2435277754091950E+00, 0.7405152092807190E+00, 0.6263636702652710E+00, & 0.7405152092807200E+00, -0.6263636702652700E+00, -0.2435277754091950E+00, & -0.2435277754091950E+00, 0.7405152092807200E+00, -0.6263636702652710E+00, & 0.7405152092807200E+00, 0.6263636702652700E+00, 0.2435277754091950E+00, & 0.6263636702652710E+00, 0.2435277754091940E+00, 0.7405152092807200E+00, & -0.6263636702652710E+00, -0.2435277754091940E+00, 0.7405152092807200E+00, & -0.2862487234260350E+00, 0.9571203270924580E+00, -0.4452356458542100E-01, & 0.9571203270924580E+00, -0.4452356458542000E-01, -0.2862487234260350E+00, & 0.2862487234260350E+00, -0.9571203270924580E+00, -0.4452356458542100E-01, & -0.4452356458542000E-01, -0.2862487234260350E+00, 0.9571203270924580E+00, & -0.9571203270924580E+00, -0.4452356458541900E-01, 0.2862487234260350E+00, & -0.4452356458542100E-01, 0.2862487234260340E+00, -0.9571203270924580E+00, & -0.9571203270924580E+00, 0.4452356458542000E-01, -0.2862487234260340E+00, & 0.4452356458542100E-01, 0.2862487234260340E+00, 0.9571203270924580E+00, & 0.9571203270924580E+00, 0.4452356458542000E-01, 0.2862487234260340E+00, & 0.4452356458542100E-01, -0.2862487234260340E+00, -0.9571203270924580E+00, & -0.2862487234260340E+00, -0.9571203270924580E+00, 0.4452356458542100E-01, & 0.2862487234260350E+00, 0.9571203270924580E+00, 0.4452356458542100E-01 & /), (/ 3, 36 /) ) return end subroutine design_09_048_3d ( x ) ! !******************************************************************************* ! !! DESIGN_09_048_3D returns a 9-design of 48 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,48), the coordinates of the points. ! implicit none ! real x(3,48) ! x(1:3,1:48) = reshape ( (/ & 0.9333646931993099E+00, 0.3535421889214720E+00, -0.06195377423185971E+00, & 0.9333646931993099E+00, -0.3535421889214720E+00, 0.06195377423185971E+00, & 0.9333646931993099E+00, -0.06195377423185971E+00, -0.3535421889214720E+00, & 0.9333646931993099E+00, 0.06195377423185971E+00, 0.3535421889214720E+00, & -0.9333646931993099E+00, 0.3535421889214720E+00, 0.06195377423185971E+00, & -0.9333646931993099E+00, -0.3535421889214720E+00, -0.06195377423185971E+00, & -0.9333646931993099E+00, -0.06195377423185971E+00, 0.3535421889214720E+00, & -0.9333646931993099E+00, 0.06195377423185971E+00, -0.3535421889214720E+00, & -0.06195377423185971E+00, 0.9333646931993099E+00, 0.3535421889214720E+00, & 0.06195377423185971E+00, 0.9333646931993099E+00, -0.3535421889214720E+00, & -0.3535421889214720E+00, 0.9333646931993099E+00, -0.06195377423185971E+00, & 0.3535421889214720E+00, 0.9333646931993099E+00, 0.06195377423185971E+00, & 0.06195377423185971E+00, -0.9333646931993099E+00, 0.3535421889214720E+00, & -0.06195377423185971E+00, -0.9333646931993099E+00, -0.3535421889214720E+00, & 0.3535421889214720E+00, -0.9333646931993099E+00, -0.06195377423185971E+00, & -0.3535421889214720E+00, -0.9333646931993099E+00, 0.06195377423185971E+00, & 0.3535421889214720E+00, -0.06195377423185971E+00, 0.9333646931993099E+00, & -0.3535421889214720E+00, 0.06195377423185971E+00, 0.9333646931993099E+00, & -0.06195377423185971E+00, -0.3535421889214720E+00, 0.9333646931993099E+00, & 0.06195377423185971E+00, 0.3535421889214720E+00, 0.9333646931993099E+00, & 0.3535421889214720E+00, 0.06195377423185971E+00, -0.9333646931993099E+00, & -0.3535421889214720E+00, -0.06195377423185971E+00, -0.9333646931993099E+00, & -0.06195377423185971E+00, 0.3535421889214720E+00, -0.9333646931993099E+00, & 0.06195377423185971E+00, -0.3535421889214720E+00, -0.9333646931993099E+00, & 0.7068416977125503E+00, 0.6397400986197920E+00, 0.3018400579657685E+00, & 0.7068416977125503E+00, -0.6397400986197920E+00, -0.3018400579657685E+00, & 0.7068416977125503E+00, 0.3018400579657685E+00, -0.6397400986197920E+00, & 0.7068416977125503E+00, -0.3018400579657685E+00, 0.6397400986197920E+00, & -0.7068416977125503E+00, 0.6397400986197920E+00, -0.3018400579657685E+00, & -0.7068416977125503E+00, -0.6397400986197920E+00, 0.3018400579657685E+00, & -0.7068416977125503E+00, 0.3018400579657685E+00, 0.6397400986197920E+00, & -0.7068416977125503E+00, -0.3018400579657685E+00, -0.6397400986197920E+00, & 0.3018400579657685E+00, 0.7068416977125503E+00, 0.6397400986197920E+00, & -0.3018400579657685E+00, 0.7068416977125503E+00, -0.6397400986197920E+00, & -0.6397400986197920E+00, 0.7068416977125503E+00, 0.3018400579657685E+00, & 0.6397400986197920E+00, 0.7068416977125503E+00, -0.3018400579657685E+00, & -0.3018400579657685E+00, -0.7068416977125503E+00, 0.6397400986197920E+00, & 0.3018400579657685E+00, -0.7068416977125503E+00, -0.6397400986197920E+00, & 0.6397400986197920E+00, -0.7068416977125503E+00, 0.3018400579657685E+00, & -0.6397400986197920E+00, -0.7068416977125503E+00, -0.3018400579657685E+00, & 0.6397400986197920E+00, 0.3018400579657685E+00, 0.7068416977125503E+00, & -0.6397400986197920E+00, -0.3018400579657685E+00, 0.7068416977125503E+00, & 0.3018400579657685E+00, -0.6397400986197920E+00, 0.7068416977125503E+00, & -0.3018400579657685E+00, 0.6397400986197920E+00, 0.7068416977125503E+00, & 0.6397400986197920E+00, -0.3018400579657685E+00, -0.7068416977125503E+00, & -0.6397400986197920E+00, 0.3018400579657685E+00, -0.7068416977125503E+00, & 0.3018400579657685E+00, 0.6397400986197920E+00, -0.7068416977125503E+00, & -0.3018400579657685E+00, -0.6397400986197920E+00, -0.7068416977125503E+00 & /), (/ 3, 48 /) ) return end subroutine design_10_060_3d ( x ) ! !******************************************************************************* ! !! DESIGN_10_060_3D returns a 10-design of 60 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,60), the coordinates of the points. ! implicit none ! real x(3,60) ! x(1:3,1:60) = reshape ( (/ & -0.7538286671970170E+00, 0.5459519080612600E+00,-0.3656211900262870E+00, & 0.5459519080612580E+00,-0.3656211900262900E+00,-0.7538286671970170E+00, & 0.7538286671970160E+00,-0.5459519080612610E+00,-0.3656211900262880E+00, & -0.3656211900262890E+00,-0.7538286671970170E+00, 0.5459519080612590E+00, & -0.5459519080612580E+00,-0.3656211900262880E+00, 0.7538286671970180E+00, & -0.3656211900262890E+00, 0.7538286671970170E+00,-0.5459519080612590E+00, & -0.5459519080612580E+00, 0.3656211900262890E+00,-0.7538286671970170E+00, & 0.3656211900262870E+00, 0.7538286671970170E+00, 0.5459519080612600E+00, & 0.5459519080612590E+00, 0.3656211900262890E+00, 0.7538286671970170E+00, & 0.3656211900262870E+00,-0.7538286671970180E+00,-0.5459519080612590E+00, & -0.7538286671970170E+00,-0.5459519080612610E+00, 0.3656211900262880E+00, & 0.7538286671970160E+00, 0.5459519080612610E+00, 0.3656211900262870E+00, & 0.7001810193637300E+00,-0.7131510658477930E+00, 0.3408954976125600E-01, & -0.7131510658477940E+00, 0.3408954976125400E-01, 0.7001810193637290E+00, & -0.7001810193637300E+00, 0.7131510658477930E+00, 0.3408954976125600E-01, & 0.3408954976125500E-01, 0.7001810193637300E+00,-0.7131510658477930E+00, & 0.7131510658477930E+00, 0.3408954976125400E-01,-0.7001810193637300E+00, & 0.3408954976125700E-01,-0.7001810193637290E+00, 0.7131510658477940E+00, & 0.7131510658477940E+00,-0.3408954976125500E-01, 0.7001810193637280E+00, & -0.3408954976125600E-01,-0.7001810193637290E+00,-0.7131510658477940E+00, & -0.7131510658477940E+00,-0.3408954976125400E-01,-0.7001810193637290E+00, & -0.3408954976125700E-01, 0.7001810193637290E+00, 0.7131510658477940E+00, & 0.7001810193637300E+00, 0.7131510658477930E+00,-0.3408954976125700E-01, & -0.7001810193637290E+00,-0.7131510658477940E+00,-0.3408954976125700E-01, & 0.2762302182617920E+00, 0.7705072072573600E-01,-0.9579979399532590E+00, & 0.7705072072573500E-01,-0.9579979399532580E+00, 0.2762302182617930E+00, & -0.2762302182617920E+00,-0.7705072072573400E-01,-0.9579979399532590E+00, & -0.9579979399532590E+00, 0.2762302182617910E+00, 0.7705072072573800E-01, & -0.7705072072573500E-01,-0.9579979399532590E+00,-0.2762302182617920E+00, & -0.9579979399532580E+00,-0.2762302182617930E+00,-0.7705072072573600E-01, & -0.7705072072573600E-01, 0.9579979399532580E+00, 0.2762302182617940E+00, & 0.9579979399532590E+00,-0.2762302182617900E+00, 0.7705072072573700E-01, & 0.7705072072573400E-01, 0.9579979399532590E+00,-0.2762302182617920E+00, & 0.9579979399532580E+00, 0.2762302182617930E+00,-0.7705072072573800E-01, & 0.2762302182617930E+00,-0.7705072072573600E-01, 0.9579979399532580E+00, & -0.2762302182617910E+00, 0.7705072072573500E-01, 0.9579979399532590E+00, & 0.4518191025552430E+00,-0.7833559375218190E+00, 0.4268641162190700E+00, & -0.7833559375218180E+00, 0.4268641162190710E+00, 0.4518191025552430E+00, & -0.4518191025552430E+00, 0.7833559375218190E+00, 0.4268641162190700E+00, & 0.4268641162190710E+00, 0.4518191025552420E+00,-0.7833559375218190E+00, & 0.7833559375218180E+00, 0.4268641162190700E+00,-0.4518191025552440E+00, & 0.4268641162190720E+00,-0.4518191025552420E+00, 0.7833559375218180E+00, & 0.7833559375218190E+00,-0.4268641162190700E+00, 0.4518191025552420E+00, & -0.4268641162190720E+00,-0.4518191025552410E+00,-0.7833559375218190E+00, & -0.7833559375218180E+00,-0.4268641162190700E+00,-0.4518191025552430E+00, & -0.4268641162190720E+00, 0.4518191025552410E+00, 0.7833559375218190E+00, & 0.4518191025552430E+00, 0.7833559375218180E+00,-0.4268641162190710E+00, & -0.4518191025552420E+00,-0.7833559375218190E+00,-0.4268641162190710E+00, & -0.3385843599592600E+00,-0.9332100372395270E+00, 0.1203314488667840E+00, & -0.9332100372395260E+00, 0.1203314488667870E+00,-0.3385843599592600E+00, & 0.3385843599592610E+00, 0.9332100372395260E+00, 0.1203314488667860E+00, & 0.1203314488667850E+00,-0.3385843599592610E+00,-0.9332100372395260E+00, & 0.9332100372395260E+00, 0.1203314488667890E+00, 0.3385843599592600E+00, & 0.1203314488667850E+00, 0.3385843599592610E+00, 0.9332100372395260E+00, & 0.9332100372395260E+00,-0.1203314488667870E+00,-0.3385843599592620E+00, & -0.1203314488667840E+00, 0.3385843599592620E+00,-0.9332100372395260E+00, & -0.9332100372395260E+00,-0.1203314488667870E+00, 0.3385843599592610E+00, & -0.1203314488667840E+00,-0.3385843599592620E+00, 0.9332100372395260E+00, & -0.3385843599592620E+00, 0.9332100372395260E+00,-0.1203314488667840E+00, & 0.3385843599592610E+00,-0.9332100372395270E+00,-0.1203314488667830E+00 & /), (/ 3, 60 /) ) return end subroutine design_11_070_3d ( x ) ! !******************************************************************************* ! !! DESIGN_11_070_3D returns an 11-design of 70 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,70), the coordinates of the points. ! implicit none ! real x(3,70) ! x(1:3,1:70) = reshape ( (/ & -0.6749405204804370E+00, 0.7256290520645010E+00, 0.1338572844994640E+00, & 0.9672433446143000E-01, -0.9103273829899871E+00, -0.4024282034122290E+00, & 0.9069603159163580E+00, 0.1351270221350530E+00, 0.3989532218717040E+00, & -0.1327587047580260E+00, -0.3076585240607330E+00, 0.9421896618429551E+00, & -0.2260558011275870E+00, -0.9588311747087040E+00, -0.1718765637988270E+00, & 0.2757382640198530E+00, -0.1806927335075380E+00, -0.9440966824498920E+00, & 0.8308816505135890E+00, 0.3332786445281770E+00, -0.4456018715639280E+00, & -0.6164713286127870E+00, -0.2675443371664000E+00, 0.7405289519313720E+00, & 0.4302772932874360E+00, -0.8926444716153570E+00, -0.1343402329005700E+00, & -0.6909871985230760E+00, 0.1751093390532070E+00, 0.7013368740153190E+00, & 0.8105170415355070E+00, -0.3814493375472150E+00, 0.4444755654311270E+00, & -0.8673444385462600E-01, -0.7060085178359240E+00, -0.7028720431147840E+00, & 0.8713208520567370E+00, 0.4604578060039600E+00, 0.1696425113618090E+00, & -0.6007352667495490E+00, 0.3032661185525090E+00, -0.7396937208206140E+00, & -0.8991009470834190E+00, -0.4180812466398280E+00, 0.1297133692484600E+00, & 0.8969270870795710E+00, -0.1880663273448430E+00, -0.4001910256139910E+00, & 0.1504949609669910E+00, 0.9030721531392540E+00, 0.4022585647913240E+00, & 0.2486017164026210E+00, -0.2242836122819530E+00, 0.9422812997525900E+00, & 0.8425846747084230E+00, -0.5107563820855460E+00, -0.1708185707275000E+00, & 0.2600345004183370E+00, 0.2093564899576840E+00, -0.9426303192157490E+00, & -0.5880246157243400E-01, 0.8945952131887460E+00, -0.4429917324880950E+00, & 0.6161176918013200E-01, -0.6712901087901590E+00, 0.7386295280714080E+00, & 0.9823375360976140E+00, 0.1337840147101790E+00, -0.1308235551485130E+00, & -0.3822775825325760E+00, -0.6052438479001370E+00, 0.6982433203920290E+00, & 0.6118392782163570E+00, 0.6515716084972490E+00, 0.4484497035699710E+00, & 0.6468653485695820E+00, -0.2984641292976520E+00, -0.7017723165974470E+00, & -0.1692010168812820E+00, 0.9704309127468180E+00, 0.1721477838129720E+00, & -0.4717254508623250E+00, -0.4752957036627900E+00, -0.7426769776211120E+00, & 0.1193697559557230E+00, -0.9846926044113470E+00, 0.1270091972286680E+00, & 0.4572892122317290E+00, 0.7961559905587140E+00, -0.3962602870260380E+00, & -0.8136314363509790E+00, 0.4209422727934990E+00, 0.4010130780372200E+00, & 0.2871545553868710E+00, 0.1641733239706600E+00, 0.9437104328219510E+00, & 0.7466675770451550E+00, 0.6440359890663980E+00, -0.1664487133527440E+00, & -0.1157796447409060E+00, 0.3149524646461050E+00, -0.9420191181058980E+00, & -0.8675792121114660E+00, 0.2219163150406650E+00, -0.4450387172267380E+00, & 0.6551400224339120E+00, -0.1511626316805080E+00, 0.7402306463452570E+00, & 0.1767365123580470E+00, 0.9760026717210610E+00, -0.1272123814448300E+00, & 0.4552846077010780E+00, -0.5527863541042300E+00, 0.6979564260801880E+00, & -0.4320239302197420E+00, 0.7818380260588590E+00, 0.4495382349988430E+00, & 0.4859612670925570E+00, 0.5251632870762940E+00, -0.6986022965844150E+00, & -0.9757586399688970E+00, 0.1384318633541960E+00, 0.1695042646494000E+00, & 0.3086023784018720E+00, -0.5931881528186310E+00, -0.7435673388472140E+00, & 0.9729796935790060E+00, -0.1911673832241180E+00, 0.1294818422565370E+00, & -0.6146246897809310E+00, 0.6821777798642300E+00, -0.3960681347586600E+00, & -0.6530289643965320E+00, -0.6449755112599790E+00, 0.3969379819746680E+00, & -0.7037890092249301E-01, 0.3208780019654030E+00, 0.9445020477265430E+00, & -0.3812529252505450E+00, 0.9096621317590370E+00, -0.1648059860305650E+00, & -0.3323417963042340E+00, -0.9834857390798001E-02, -0.9431077382830541E+00, & -0.4777466211688960E+00, -0.7551386761927890E+00, -0.4489139624465980E+00, & 0.3438775584320710E+00, 0.5740395992766760E+00, 0.7431196157208280E+00, & -0.8732125444955480E+00, 0.4700939413920300E+00, -0.1284972311068120E+00, & 0.6642168929664370E+00, 0.2599873469743290E+00, 0.7008726692568790E+00, & -0.8784891093226410E+00, -0.1706738463406710E+00, 0.4462368462787390E+00, & -0.3470827166082120E+00, 0.6266486359259690E+00, -0.6977428429758250E+00, & -0.4337167959777130E+00, -0.8857449345235880E+00, 0.1653652075033670E+00, & 0.6618616833629820E+00, 0.1125121287996140E+00, -0.7411343555448630E+00, & 0.4820689451276740E+00, 0.8658695321747411E+00, 0.1337141929452020E+00, & -0.8374660393934000E+00, -0.3724869462279710E+00, -0.3998801167256170E+00, & 0.4103552192662560E+00, -0.8216190506679300E+00, 0.3956649208616700E+00, & -0.3298995680158790E+00, 0.2926988290883000E-01, 0.9435621595726690E+00, & -0.9824290346165530E+00, -0.8096425490319800E-01, -0.1681605820944880E+00, & -0.9037042148768300E-01, -0.3161604362075780E+00, -0.9443917436621160E+00, & 0.5719599204934041E+00, -0.6863129715022710E+00, -0.4492620109656520E+00, & -0.4420214769968210E+00, 0.5021117496198080E+00, 0.7433039787107850E+00, & -0.7165157243440931E+00, -0.6847935061717610E+00, -0.1329024855773800E+00, & -0.4421804362881600E-01, 0.7098516256115680E+00, 0.7029619009834420E+00, & -0.1105565563628060E+00, -0.8896249757307140E+00, 0.4431079444123340E+00, & -0.7010281311842810E+00, -0.1342573855036490E+00, -0.7003816914554510E+00, & 0.7078411100140820E+00, -0.6867219567092810E+00, 0.1654506486763020E+00, & 0.9986011140880301E-01, 0.6665513378697570E+00, -0.7387403279457930E+00 & /), (/ 3, 70 /) ) return end subroutine design_12_084_3d ( x ) ! !******************************************************************************* ! !! DESIGN_12_084_3D returns a 12-design of 84 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,84), the coordinates of the points. ! implicit none ! real x(3,84) ! x(1:3,1:84) = reshape ( (/ & -0.8938049777611360E+00, -0.4268621911244970E+00, 0.1374821134468340E+00, & -0.4268621912410920E+00, 0.1374821134452880E+00, -0.8938049777056910E+00, & 0.8938049777701570E+00, 0.4268621911281570E+00, 0.1374821133768230E+00, & 0.1374821132964000E+00, -0.8938049777394910E+00, -0.4268621912182710E+00, & 0.4268621912727310E+00, 0.1374821133773450E+00, 0.8938049777010320E+00, & 0.1374821135290330E+00, 0.8938049777077750E+00, 0.4268621912097560E+00, & 0.4268621911859830E+00, -0.1374821134749930E+00, -0.8938049777274411E+00, & -0.1374821133242910E+00, 0.8938049777252790E+00, -0.4268621912390470E+00, & -0.4268621912174140E+00, -0.1374821133472880E+00, 0.8938049777320730E+00, & -0.1374821135010710E+00, -0.8938049776936550E+00, 0.4268621912483280E+00, & -0.8938049776725480E+00, 0.4268621913280710E+00, -0.1374821133907030E+00, & 0.8938049776635530E+00, -0.4268621913332600E+00, -0.1374821134330650E+00, & 0.9830866003855740E+00, 0.2230038010752200E-01, -0.1817785168533230E+00, & 0.2230038023239400E-01, -0.1817785168087260E+00, 0.9830866003909881E+00, & -0.9830866003966130E+00, -0.2230038011332300E-01, -0.1817785167929150E+00, & -0.1817785167104710E+00, 0.9830866004096310E+00, 0.2230038021145500E-01, & -0.2230038027285400E-01, -0.1817785168366860E+00, -0.9830866003849000E+00, & -0.1817785169360100E+00, -0.9830866003681790E+00, -0.2230038020037600E-01, & -0.2230038017080000E-01, 0.1817785168418750E+00, 0.9830866003862559E+00, & 0.1817785167109790E+00, -0.9830866004090441E+00, 0.2230038023321200E-01, & 0.2230038021255800E-01, 0.1817785168040810E+00, -0.9830866003922970E+00, & 0.1817785169343840E+00, 0.9830866003675029E+00, -0.2230038024343100E-01, & 0.9830866003916290E+00, -0.2230038033237200E-01, 0.1817785167929960E+00, & -0.9830866003805701E+00, 0.2230038033786500E-01, 0.1817785168521280E+00, & -0.8979519869718749E+00, 0.3766956030353650E+00, 0.2275580184196640E+00, & 0.3766956029275280E+00, 0.2275580183392060E+00, -0.8979519870375030E+00, & 0.8979519869860531E+00, -0.3766956030285690E+00, 0.2275580183749660E+00, & 0.2275580183055540E+00, -0.8979519870419040E+00, 0.3766956029373660E+00, & -0.3766956028752610E+00, 0.2275580184552540E+00, 0.8979519870300200E+00, & 0.2275580184865670E+00, 0.8979519869904800E+00, -0.3766956029506000E+00, & -0.3766956029825110E+00, -0.2275580183689100E+00, -0.8979519870069100E+00, & -0.2275580182809390E+00, 0.8979519870547670E+00, 0.3766956029215730E+00, & 0.3766956029314370E+00, -0.2275580184255800E+00, 0.8979519870139741E+00, & -0.2275580185113490E+00, -0.8979519870023480E+00, -0.3766956029073390E+00, & -0.8979519870721940E+00, -0.3766956028306370E+00, -0.2275580183627070E+00, & 0.8979519870578190E+00, 0.3766956028230510E+00, -0.2275580184319890E+00, & -0.1713301512452210E+00, 0.4597861949530550E+00, -0.8713453013615680E+00, & 0.4597861948431170E+00, -0.8713453014146491E+00, -0.1713301512702920E+00, & 0.1713301511912190E+00, -0.4597861949823340E+00, -0.8713453013567360E+00, & -0.8713453013647540E+00, -0.1713301511629810E+00, 0.4597861949776620E+00, & -0.4597861950424320E+00, -0.8713453013037380E+00, 0.1713301512994720E+00, & -0.8713453013534070E+00, 0.1713301513627270E+00, -0.4597861949247340E+00, & -0.4597861948552020E+00, 0.8713453014084100E+00, -0.1713301512695920E+00, & 0.8713453013928349E+00, 0.1713301511781830E+00, 0.4597861949187800E+00, & 0.4597861950544120E+00, 0.8713453013090380E+00, 0.1713301512403680E+00, & 0.8713453013254860E+00, -0.1713301513773550E+00, -0.4597861949721960E+00, & -0.1713301512966100E+00, -0.4597861949130030E+00, 0.8713453013725970E+00, & 0.1713301513507360E+00, 0.4597861949429830E+00, 0.8713453013461350E+00, & -0.3971917022972230E+00, -0.5480955906492260E+00, -0.7360910100912190E+00, & -0.5480955907789020E+00, -0.7360910100565570E+00, -0.3971917021825150E+00, & 0.3971917022502210E+00, 0.5480955906252050E+00, -0.7360910101344670E+00, & -0.7360910101747640E+00, -0.3971917021370830E+00, -0.5480955906530750E+00, & 0.5480955906102120E+00, -0.7360910101691310E+00, 0.3971917022066690E+00, & -0.7360910100491940E+00, 0.3971917023058890E+00, 0.5480955906993850E+00, & 0.5480955907525290E+00, 0.7360910100441170E+00, -0.3971917022419620E+00, & 0.7360910101399250E+00, 0.3971917021196020E+00, -0.5480955907125310E+00, & -0.5480955905843859E+00, 0.7360910101826250E+00, 0.3971917022173000E+00, & 0.7360910100837820E+00, -0.3971917022879800E+00, 0.5480955906659120E+00, & -0.3971917021252600E+00, 0.5480955907404190E+00, 0.7360910101161060E+00, & 0.3971917021713860E+00, -0.5480955907162950E+00, 0.7360910101091790E+00, & 0.3794747255349560E+00, 0.6962772780944900E+00, 0.6092592918368150E+00, & 0.6962772782104411E+00, 0.6092592917871140E+00, 0.3794747254020010E+00, & -0.3794747254955760E+00, -0.6962772780741610E+00, 0.6092592918845759E+00, & 0.6092592919259530E+00, 0.3794747253762130E+00, 0.6962772781030080E+00, & -0.6962772780710560E+00, 0.6092592919338879E+00, -0.3794747254221020E+00, & 0.6092592917959100E+00, -0.3794747255155420E+00, -0.6962772781408640E+00, & -0.6962772781859060E+00, -0.6092592917748491E+00, 0.3794747254667130E+00, & -0.6092592918828780E+00, -0.3794747253530890E+00, 0.6962772781533030E+00, & 0.6962772780465480E+00, -0.6092592919465890E+00, -0.3794747254466760E+00, & -0.6092592918387369E+00, 0.3794747254930950E+00, -0.6962772781156230E+00, & 0.3794747253362900E+00, -0.6962772781815950E+00, -0.6092592918610080E+00, & -0.3794747253752370E+00, 0.6962772781612160E+00, -0.6092592918600390E+00, & -0.6787014464703280E+00, 0.7297642134790810E+00, 0.8251387328409700E-01, & 0.7297642133897720E+00, 0.8251387317923400E-01, -0.6787014465791040E+00, & 0.6787014464747720E+00, -0.7297642134772200E+00, 0.8251387326399499E-01, & 0.8251387321767099E-01, -0.6787014465525470E+00, 0.7297642134101250E+00, & -0.7297642133709740E+00, 0.8251387336840200E-01, 0.6787014465763180E+00, & 0.8251387332689200E-01, 0.6787014465346920E+00, -0.7297642134143810E+00, & -0.7297642134312839E+00, -0.8251387320173600E-01, -0.6787014465317330E+00, & -0.8251387317169399E-01, 0.6787014465773989E+00, 0.7297642133922100E+00, & 0.7297642134127970E+00, -0.8251387334668001E-01, 0.6787014465339900E+00, & -0.8251387337365500E-01, -0.6787014465583360E+00, -0.7297642133871040E+00, & -0.6787014466415410E+00, -0.7297642133248270E+00, -0.8251387324006100E-01, & 0.6787014466370160E+00, 0.7297642133213440E+00, -0.8251387330807500E-01 & /), (/ 3, 84 /) ) return end subroutine design_13_094_3d ( x ) ! !******************************************************************************* ! !! DESIGN_13_094_3D returns a 13-design of 94 points in 3D. ! ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,94), the coordinates of the points. ! implicit none ! real x(3,94) ! x(1:3,1:94) = reshape ( (/ & 0.2767901292869220E+00, -0.2352564669166030E+00, 0.9316875115097590E+00, & 0.1988867806345010E+00, 0.3605486031395280E+00, 0.9112896099830060E+00, & -0.2588713390623730E+00, 0.2042300774414090E+00, 0.9440739935409350E+00, & -0.2002829139273100E+00, -0.2283461619503540E+00, 0.9527564141538640E+00, & -0.8835451666675250E+00, -0.4142776966390410E+00, -0.2184534928214830E+00, & 0.3977500579085590E+00, -0.9016195359986890E+00, -0.1699326447132700E+00, & 0.8765394870692820E+00, 0.4343921041923270E+00, -0.2073210732744830E+00, & -0.4117423575176250E+00, 0.8848959788397900E+00, -0.2177781845341660E+00, & 0.5011140938672040E+00, 0.3778689327520590E+00, 0.7785240745079570E+00, & -0.3942388477903860E+00, 0.4736871338809520E+00, 0.7875253837741090E+00, & -0.4953642920021360E+00, -0.4064298087406120E+00, 0.7677428142133880E+00, & 0.3701865838021720E+00, -0.5593062709682520E+00, 0.7417131443007230E+00, & 0.4117423575179610E+00, -0.8848959788392530E+00, 0.2177781845357150E+00, & 0.8835451666683970E+00, 0.4142776966391570E+00, 0.2184534928177370E+00, & -0.3977500579105900E+00, 0.9016195359972180E+00, 0.1699326447163240E+00, & -0.8765394870698781E+00, -0.4343921041912780E+00, 0.2073210732741600E+00, & -0.6910143013156500E+00, -0.7028152268879870E+00, -0.1689674294993920E+00, & 0.6844003444601270E+00, -0.7144410442516540E+00, -0.1454997003140040E+00, & 0.6607104894827650E+00, 0.7313577150350630E+00, -0.1690489329931910E+00, & -0.7736112879563090E+00, 0.6152223578577780E+00, -0.1517465832844280E+00, & 0.6836297846860220E+00, -0.2199673313208400E+00, -0.6958912922588780E+00, & 0.2565740995035260E+00, 0.6814727910714180E+00, -0.6853937309994060E+00, & -0.6444745096378920E+00, 0.3540622279855340E+00, -0.6777112549905880E+00, & -0.2205350804161410E+00, -0.7315477541408590E+00, -0.6451373200469120E+00, & 0.3942388477920410E+00, -0.4736871338825220E+00, -0.7875253837723361E+00, & 0.4953642920009680E+00, 0.4064298087412850E+00, -0.7677428142137850E+00, & -0.3701865838024390E+00, 0.5593062709700030E+00, -0.7417131442992700E+00, & -0.5011140938646400E+00, -0.3778689327522390E+00, -0.7785240745095200E+00, & -0.4885748739685340E+00, -0.6884557978444000E-02, -0.8724948110952140E+00, & 0.5554204872744400E-01, -0.5841317202499910E+00, -0.8097562684048490E+00, & 0.5268121074647910E+00, 0.4970781961767100E-01, -0.8485270391079840E+00, & 0.4245864108125000E-02, 0.4886546223943000E+00, -0.8724669808369020E+00, & -0.7103173615146130E+00, -0.4795309146254010E+00, 0.5152662882912530E+00, & 0.5214043844765620E+00, -0.7280391654517230E+00, 0.4450802640164760E+00, & 0.7380993553888520E+00, 0.4078032732059310E+00, 0.5374996111041300E+00, & -0.4960579912625540E+00, 0.6996701137033650E+00, 0.5141869322482640E+00, & -0.9732208093073270E+00, 0.1942607517895710E+00, -0.1228983996858520E+00, & -0.3762035726666050E+00, -0.9088659640035350E+00, -0.1800931186603390E+00, & 0.9144779003707620E+00, -0.3686579885340490E+00, -0.1667976535311930E+00, & 0.2874621878541300E+00, 0.9468179143405530E+00, -0.1445729146068610E+00, & -0.9890066992933400E-01, 0.9950970592800400E+00, 0.7071773083110000E-03, & -0.9860682014252020E+00, -0.1613285617797790E+00, 0.4052896855503000E-01, & 0.9890066992737100E-01, -0.9950970592802360E+00, -0.7071773075220000E-03, & 0.9860682014253800E+00, 0.1613285617778720E+00, -0.4052896855829700E-01, & 0.8152324408482650E+00, 0.1318323811749280E+00, -0.5639293312661871E+00, & -0.1136445670803390E+00, 0.7872516056155811E+00, -0.6060691559787640E+00, & -0.7605044417053100E+00, -0.1056987489052100E-01, -0.6492466957107240E+00, & 0.1798482279122410E+00, -0.8324827854052400E+00, -0.5240486875479800E+00, & -0.9276898918095100E+00, -0.4724128948218800E-01, -0.3703508136922610E+00, & -0.6227375977374500E-01, -0.9444346856864090E+00, -0.3227461902425130E+00, & 0.9398402607408960E+00, -0.4456984180221600E-01, -0.3386942773242700E+00, & -0.8242738781550000E-02, 0.9340870594601500E+00, -0.3569501682398660E+00, & -0.2874621878541230E+00, -0.9468179143395800E+00, 0.1445729146132430E+00, & 0.9732208093070031E+00, -0.1942607517949340E+00, 0.1228983996799320E+00, & 0.3762035726640970E+00, 0.9088659640033310E+00, 0.1800931186666110E+00, & -0.9144779003729060E+00, 0.3686579885319570E+00, 0.1667976535240600E+00, & -0.1988867806309870E+00, -0.3605486031400650E+00, -0.9112896099835600E+00, & 0.2588713390641120E+00, -0.2042300774442540E+00, -0.9440739935398430E+00, & 0.2002829139245270E+00, 0.2283461619513520E+00, -0.9527564141542090E+00, & -0.2767901292844010E+00, 0.2352564669207660E+00, -0.9316875115094559E+00, & 0.4960579912585950E+00, -0.6996701137077700E+00, -0.5141869322460890E+00, & 0.7103173615128360E+00, 0.4795309146287610E+00, -0.5152662882905760E+00, & -0.5214043844766950E+00, 0.7280391654524530E+00, -0.4450802640151260E+00, & -0.7380993553844990E+00, -0.4078032732091310E+00, -0.5374996111076790E+00, & -0.8152324408494460E+00, -0.1318323811707120E+00, 0.5639293312654660E+00, & 0.1136445670801830E+00, -0.7872516056137170E+00, 0.6060691559812150E+00, & 0.7605044417099350E+00, 0.1056987488986400E-01, 0.6492466957053170E+00, & -0.1798482279168390E+00, 0.8324827854024680E+00, 0.5240486875508060E+00, & 0.6444745096387340E+00, -0.3540622279858040E+00, 0.6777112549896470E+00, & 0.2205350804135180E+00, 0.7315477541423701E+00, 0.6451373200460950E+00, & -0.6836297846853430E+00, 0.2199673313253120E+00, 0.6958912922581320E+00, & -0.2565740995009430E+00, -0.6814727910693790E+00, 0.6853937310024000E+00, & 0.8242738783470000E-02, -0.9340870594594580E+00, 0.3569501682416340E+00, & 0.9276898918126020E+00, 0.4724128947913300E-01, 0.3703508136849070E+00, & 0.6227375976878800E-01, 0.9444346856860160E+00, 0.3227461902446170E+00, & -0.9398402607419311E+00, 0.4456984180196000E-01, 0.3386942773214330E+00, & -0.6844003444607160E+00, 0.7144410442513049E+00, 0.1454997003129530E+00, & -0.6607104894826710E+00, -0.7313577150342460E+00, 0.1690489329970960E+00, & 0.7736112879557430E+00, -0.6152223578588770E+00, 0.1517465832828550E+00, & 0.6910143013134310E+00, 0.7028152268893190E+00, 0.1689674295029260E+00, & 0.8235860235780980E+00, -0.3946345889044380E+00, 0.4073936707989480E+00, & 0.4940686203583030E+00, 0.7088396084166290E+00, 0.5034308372726120E+00, & -0.7588751305010500E+00, 0.4506058872740210E+00, 0.4701732347348220E+00, & -0.4314990726013570E+00, -0.7879350487114470E+00, 0.4392799897061760E+00, & 0.4885748739746180E+00, 0.6884557979146000E-02, 0.8724948110918010E+00, & -0.5554204872563400E-01, 0.5841317202474440E+00, 0.8097562684068100E+00, & -0.5268121074675800E+00, -0.4970781961590400E-01, 0.8485270391063560E+00, & -0.4245864106237000E-02, -0.4886546223892350E+00, 0.8724669808397481E+00, & -0.4940686203577400E+00, -0.7088396084202140E+00, -0.5034308372681180E+00, & 0.7588751304965180E+00, -0.4506058872758780E+00, -0.4701732347403580E+00, & 0.4314990726012260E+00, 0.7879350487142150E+00, -0.4392799897013400E+00, & -0.8235860235777540E+00, 0.3946345889034440E+00, -0.4073936708006050E+00, & -0.5223814787874000E-01, -0.5618483004750600E-01, -0.9970528776242170E+00, & 0.5223814788153800E-01, 0.5618483004769000E-01, 0.9970528776240600E+00 & /), (/ 3, 94 /) ) return end subroutine design_14_108_3d ( x ) ! !******************************************************************************* ! !! DESIGN_14_108_3D returns a 14-design of 108 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,108), the coordinates of the points. ! implicit none ! real x(3,108) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & -0.6255209881602540E+00, -0.7673610045544000E+00, 0.1409985179364700E+00, & -0.7672427413700500E+00, 0.1411116382934610E+00, -0.6256405368525180E+00, & 0.6254929286339920E+00, 0.7673366024979470E+00, 0.1412555651851610E+00, & 0.1412599782857530E+00, -0.6254973365383090E+00, -0.7673321969774169E+00, & 0.7672171775977220E+00, 0.1411424450656330E+00, 0.6256649363676060E+00, & 0.1409941047324360E+00, 0.6255228978850370E+00, 0.7673602587130800E+00, & 0.7673671213519559E+00, -0.1410034708464950E+00, -0.6255123678051890E+00, & -0.1411074217386270E+00, 0.6256300078253110E+00, -0.7672521025313510E+00, & -0.7673415575795750E+00, -0.1412506125124700E+00, 0.6254879682905210E+00, & -0.1411466612794940E+00, -0.6256555691710420E+00, 0.7672240407957190E+00, & -0.6256319160421340E+00, 0.7672476983004790E+00, -0.1411229077154560E+00, & 0.6256599755682080E+00, -0.7672232962446800E+00, -0.1411311754058560E+00, & 0.5571880480715090E+00, -0.4475345647833600E-01, -0.8291794782913420E+00, & -0.4485587811454200E-01, -0.8292832145924940E+00, 0.5570254035443200E+00, & -0.5570231765605090E+00, 0.4489683751235000E-01, -0.8292824939402920E+00, & -0.8292769813537900E+00, 0.5570303319042050E+00, -0.4490988238058500E-01, & 0.4500608513203000E-01, -0.8291787590336450E+00, -0.5571687696457081E+00, & -0.8291849902738060E+00, -0.5571805246676550E+00, 0.4474499788474600E-01, & 0.4474511262700700E-01, 0.8291868870343290E+00, 0.5571776927213760E+00, & 0.8292859037266960E+00, -0.5570225725340150E+00, -0.4484131541096600E-01, & -0.4489531964450300E-01, 0.8292750865916650E+00, -0.5570343266194679E+00, & 0.8291760679008749E+00, 0.5571727652985150E+00, 0.4500619990677900E-01, & 0.5570150477881700E+00, 0.4485436035495000E-01, 0.8292902525019150E+00, & -0.5571799192991600E+00, -0.4499774138897400E-01, 0.8291717197297990E+00, & -0.2560655654109130E+00, 0.8607703824921130E+00, 0.4398917762759060E+00, & 0.8608171937494520E+00, 0.4399428934535150E+00, -0.2558202678543430E+00, & 0.2559781138440990E+00, -0.8608464350244180E+00, 0.4397938386773610E+00, & 0.4397804109275130E+00, -0.2559784640674000E+00, 0.8608531907927870E+00, & -0.8608968669378900E+00, 0.4397427222396980E+00, 0.2558963124660960E+00, & 0.4399052037052120E+00, 0.2560581296938110E+00, -0.8607657323399810E+00, & -0.8607663058143230E+00, -0.4398986385971350E+00, -0.2560674804326980E+00, & -0.4399515654145460E+00, 0.2558296190221410E+00, 0.8608099825863290E+00, & 0.8608459790026740E+00, -0.4397869770942070E+00, 0.2559914358201620E+00, & -0.4397340492183260E+00, -0.2559092846502780E+00, -0.8608974410391970E+00, & -0.2558221826891520E+00, -0.8608167398021460E+00, -0.4399426682200340E+00, & 0.2559096342559870E+00, 0.8608927923347450E+00, -0.4397429467325800E+00, & -0.2148474707463120E+00, -0.3239846898907800E-01, 0.9761100878082740E+00, & -0.3236168906853200E-01, 0.9761498728347380E+00, -0.2146721846102970E+00, & 0.2146533912587150E+00, 0.3222968714374900E-01, 0.9761583728513260E+00, & 0.9761568906841750E+00, -0.2146621640237140E+00, -0.3221614667304400E-01, & 0.3218487197615700E-01, 0.9761185894661391E+00, 0.2148409488773350E+00, & 0.9761115692642290E+00, 0.2148389643385310E+00, 0.3241024144420400E-01, & 0.3240438731759700E-01, -0.9761127401675890E+00, -0.2148345274044470E+00, & -0.9761504697174500E+00, 0.2146677480389070E+00, -0.3237311264470600E-01, & -0.3222757022524800E-01, -0.9761557221333460E+00, 0.2146657631381940E+00, & -0.9761179902309550E+00, -0.2148445483512370E+00, 0.3217901787241900E-01, & -0.2146592411125010E+00, 0.3235957222646100E-01, -0.9761527894189130E+00, & 0.2148533206001200E+00, -0.3219079038364400E-01, -0.9761156712406470E+00, & -0.5316579534180750E+00, -0.8273339530941490E+00, -0.1812687248945930E+00, & -0.8272321878124060E+00, -0.1811732915871120E+00, -0.5318487998130590E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.5316939693677690E+00, 0.8273652744794220E+00, -0.1810199589093320E+00, & -0.1810139371845850E+00, -0.5316957717831260E+00, -0.8273654336584780E+00, & 0.8272650003242400E+00, -0.1811153925205650E+00, 0.5318174816895900E+00, & -0.1812747464882220E+00, 0.5316629623847160E+00, 0.8273294148729020E+00, & 0.8273379129643990E+00, 0.1812652358037510E+00, -0.5316529808631980E+00, & 0.1811784250571890E+00, 0.5318388191844240E+00, -0.8272374802330430E+00, & -0.8273707254762440E+00, 0.1810234483059680E+00, 0.5316842989860900E+00, & 0.1811102586154330E+00, -0.5318060097873780E+00, 0.8272734990184800E+00, & -0.5318438268704770E+00, 0.8272376408031750E+00, 0.1811629914142640E+00, & 0.5318078109206920E+00, -0.8272689621881080E+00, 0.1811256923905430E+00, & -0.6600529784314531E+00, -0.6410703014238900E+00, -0.3916106922647170E+00, & -0.6409432781620240E+00, -0.3914906263600130E+00, -0.6602475321053179E+00, & 0.6601308161987530E+00, 0.6411379932874460E+00, -0.3913685974476170E+00, & -0.3913661271946650E+00, -0.6601299904344370E+00, -0.6411403514158810E+00, & 0.6410141926516800E+00, -0.3914886640099250E+00, 0.6601798472922650E+00, & -0.3916131622327060E+00, 0.6600590826742870E+00, 0.6410625075180110E+00, & 0.6410745322055420E+00, 0.3916047718584040E+00, -0.6600523818722061E+00, & 0.3914935825762260E+00, 0.6602408324135060E+00, -0.6409483739081900E+00, & -0.6411454466952770E+00, 0.3913745185133930E+00, 0.6601200666850870E+00, & 0.3914857068510000E+00, -0.6601699246530760E+00, 0.6410262178062029E+00, & -0.6602469350652650E+00, 0.6409507331154460E+00, 0.3914794278831230E+00, & 0.6601690972978630E+00, -0.6410184249773530E+00, 0.3914998618294490E+00, & -0.8878095447864510E+00, -0.2962340013095760E+00, 0.3521926016460220E+00, & -0.2960667920239880E+00, 0.3523564025129960E+00, -0.8878003268014290E+00, & 0.8877394975983099E+00, 0.2961730845485540E+00, 0.3524203291424820E+00, & 0.3524163117776850E+00, -0.8877438356676250E+00, -0.2961648619048960E+00, & 0.2960029751816160E+00, 0.3522565288678170E+00, 0.8878612372176340E+00, & 0.3521966187543760E+00, 0.8878076464546130E+00, 0.2962349146112020E+00, & 0.2962433087631600E+00, -0.3522028941708700E+00, -0.8878023560177780E+00, & -0.3523574352146160E+00, 0.8877950378573241E+00, -0.2960814222555850E+00, & -0.2961794919204630E+00, -0.3524100372105150E+00, 0.8877414456017140E+00, & -0.3522554953175360E+00, -0.8878588486443870E+00, 0.2960113695493150E+00, & -0.8877931373857750E+00, 0.2960732001098630E+00, -0.3523691322852040E+00, & 0.8878631845739851E+00, -0.2960122833498500E+00, -0.3522437985034650E+00, & -0.2622350441333200E+00, -0.9631968323160830E+00, -0.5903087196255600E-01, & -0.9631467531778790E+00, -0.5898607663367000E-01, -0.2624289896453470E+00, & 0.2622467591823790E+00, 0.9632070203456430E+00, -0.5881218628148700E-01, & -0.5880201827075200E-01, -0.2622502022937960E+00, -0.9632067036956030E+00, & 0.9631574262320920E+00, -0.5885698170873300E-01, 0.2624188026763920E+00, & -0.5904103993067700E-01, 0.2622395302518100E+00, 0.9631949877243000E+00, & 0.9631989104617060E+00, 0.5903143538266000E-01, -0.2622272840915770E+00, & 0.5899352177531600E-01, 0.2624167439246010E+00, -0.9631496337000580E+00, & -0.9632095835159220E+00, 0.5881162296107100E-01, 0.2622374710596640E+00, & 0.5884953642617700E-01, -0.2624060718844200E+00, 0.9631613496712860E+00, & -0.2624212294120090E+00, 0.9631493186694710E+00, 0.5897871056935700E-01, & 0.2624095143628140E+00, -0.9631595066989900E+00, 0.5886434767523200E-01, & -0.7155075639675860E+00, -0.5512037701387860E+00, 0.4292124528598390E+00, & -0.5510696074929951E+00, 0.4293431805847270E+00, -0.7155324737444880E+00, & 0.7154222023624230E+00, 0.5511295351454290E+00, 0.4294500062373780E+00, & 0.4294508199172310E+00, -0.7154282714111380E+00, -0.5511210227691270E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:8) = reshape ( (/ & 0.5509918383737999E+00, 0.4293192792340250E+00, 0.7156067010051250E+00, & 0.4292116388668970E+00, 0.7155060331503000E+00, 0.5512063910974860E+00, & 0.5512118694302640E+00, -0.4292194620397150E+00, -0.7154971197744480E+00, & -0.4293412473175590E+00, 0.7155235615710740E+00, -0.5510826854369940E+00, & -0.5511341003106980E+00, -0.4294429977797900E+00, 0.7154228925136690E+00, & -0.4293212114664220E+00, -0.7156013233111630E+00, 0.5509973171080930E+00, & -0.7155220290294890E+00, 0.5510741739856940E+00, -0.4293547260011320E+00, & 0.7156073906348100E+00, -0.5509999389950980E+00, -0.4293077330962450E+00 & /), (/ 3, 8 /) ) x(1:3,101:108) = temp(1:3,1:8) return end subroutine design_15_120_3d ( x ) ! !******************************************************************************* ! !! DESIGN_15_120_3D returns a 15-design of 120 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,120), the coordinates of the points. ! implicit none ! real x(3,120) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & 0.8544032798674690E+00, -0.5053541340072060E+00, 0.1208810762424740E+00, & -0.5054349175556900E+00, 0.1208162198059960E+00, 0.8543646675438200E+00, & -0.8543867766655620E+00, 0.5053247652039460E+00, 0.1211202606115420E+00, & 0.1208333586366210E+00, 0.8543977898340150E+00, -0.5053748273977881E+00, & 0.5053979097545750E+00, 0.1211845075248970E+00, -0.8543344005432850E+00, & 0.1211678917817770E+00, -0.8543595921698920E+00, 0.5053593070959080E+00, & 0.5055502439906060E+00, -0.1210290998832230E+00, 0.8542662979320300E+00, & -0.1209012300582570E+00, -0.8542712308899000E+00, -0.5055725038451520E+00, & -0.5055127430804750E+00, -0.1209718018932920E+00, -0.8542966052431350E+00, & -0.1211002217099370E+00, 0.8542333106705450E+00, 0.5055889508708080E+00, & 0.8542280860180770E+00, 0.5056228637404400E+00, -0.1209954409091880E+00, & -0.8542442519150010E+00, -0.5055933391780419E+00, -0.1210046835828190E+00, & -0.2649878987783750E+00, 0.8838136985753620E+00, -0.3855577255244170E+00, & 0.8838495436614180E+00, -0.3855147723237870E+00, -0.2649308296322680E+00, & 0.2649355775867900E+00, -0.8837175312641120E+00, -0.3858140286008490E+00, & -0.3855859698282140E+00, -0.2649918821321200E+00, 0.8838001823238730E+00, & -0.8837292209025740E+00, -0.3858572041282210E+00, 0.2648336877084960E+00, & -0.3857855708943260E+00, 0.2648743412798280E+00, -0.8837483106752260E+00, & -0.8838853342582800E+00, 0.3855799306321350E+00, -0.2647165143636620E+00, & 0.3857055651888330E+00, 0.2647713629504000E+00, 0.8838140881111540E+00, & 0.8837647796773470E+00, 0.3857919932898060E+00, 0.2648100302392800E+00, & 0.3856671594356380E+00, -0.2646531289490930E+00, -0.8838662588142510E+00, & -0.2646569340063700E+00, -0.8838970336929440E+00, 0.3855940107304080E+00, & 0.2647089806257060E+00, 0.8838007658213300E+00, 0.3857789028831530E+00, & -0.9733521648930310E+00, 0.2280262392539510E+00, 0.2428162494047400E-01, & 0.2281123458869260E+00, 0.2434454914745700E-01, -0.9733304169606380E+00, & 0.9733554428092021E+00, -0.2280321804631890E+00, 0.2409370513031500E-01, & 0.2435678809852000E-01, -0.9733428333593150E+00, 0.2280580531829240E+00, & -0.2281196464116130E+00, 0.2403159282358800E-01, 0.9733364831687970E+00, & 0.2401983627102700E-01, 0.9733503190618910E+00, -0.2280618421560860E+00, & -0.2282433008441410E+00, -0.2410134029444700E-01, -0.9733057695379100E+00, & -0.2432552782893800E-01, 0.9732858593312290E+00, 0.2283044124008880E+00, & 0.2282511002315090E+00, -0.2427391182448100E-01, 0.9732996519304030E+00, & -0.2405063099923100E-01, -0.9732933319509690E+00, -0.2283016800821220E+00, & -0.9732840684188760E+00, -0.2283305892567410E+00, -0.2415086275208100E-01, & 0.9732807668974420E+00, 0.2283367922856280E+00, -0.2422515379181500E-01, & 0.1764941643605970E+00, -0.6439159617576869E+00, 0.7444609084030720E+00, & -0.6439554747347650E+00, 0.7444298798961950E+00, 0.1764808785020650E+00, & -0.1763945457957580E+00, 0.6437302463633759E+00, 0.7446451061616230E+00, & 0.7444821769849420E+00, 0.1765407684656810E+00, -0.6438785950948430E+00, & 0.6437221735449969E+00, 0.7446755654083020E+00, -0.1762953929356370E+00, & 0.7446232602985000E+00, -0.1763087546453890E+00, 0.6437790174103420E+00, & 0.6439796469919020E+00, -0.7444731281720970E+00, 0.1762100328864330E+00, & -0.7445688151995640E+00, -0.1763819450908200E+00, -0.6438219387985280E+00, & -0.6437453004186960E+00, -0.7446323171490740E+00, -0.1763935952523330E+00, & -0.7445366073086630E+00, 0.1761491742553250E+00, 0.6439229059339890E+00, & 0.1761957070235800E+00, 0.6439711185624940E+00, -0.7444838959197370E+00, & -0.1762957903461830E+00, -0.6437847990685870E+00, -0.7446213311438470E+00, & -0.5382680916693570E+00, -0.7144430972079280E+00, 0.4470330215348440E+00, & -0.7144085713422340E+00, 0.4470401217976180E+00, -0.5383080184206051E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.5383282112194380E+00, 0.7143316685506840E+00, 0.4471386857686070E+00, & 0.4471201978095990E+00, -0.5382526202846060E+00, -0.7144001997952280E+00, & 0.7142693383899240E+00, 0.4471311678997200E+00, 0.5384171532637620E+00, & 0.4470507600303290E+00, 0.5383906456527831E+00, 0.7143396465476940E+00, & 0.7143353780369111E+00, -0.4469080442623900E+00, -0.5385147794243240E+00, & -0.4472169730606700E+00, 0.5384307414350790E+00, -0.7142053736035060E+00, & -0.7141970542020020E+00, -0.4472644791667070E+00, 0.5384023156013700E+00, & -0.4469551475186520E+00, -0.5385686162875321E+00, 0.7142653160112939E+00, & -0.5385531358716100E+00, 0.7142734853459000E+00, -0.4469607454516280E+00, & 0.5384924234925470E+00, -0.7141627498790130E+00, -0.4472107741617700E+00, & -0.8542625591715191E+00, -0.1211967864813340E+00, 0.5055163884033080E+00, & -0.1211352259177740E+00, 0.5055628408198980E+00, -0.8542438006939030E+00, & 0.8543309414267219E+00, 0.1210719374548010E+00, 0.5054307355927919E+00, & 0.5056009275709700E+00, -0.8542205006653180E+00, -0.1211405724044100E+00, & 0.1209804838657270E+00, 0.5053853800887540E+00, 0.8543707275627840E+00, & 0.5053474173253790E+00, 0.8543800060355530E+00, 0.1210735028371490E+00, & 0.1210201874725290E+00, -0.5053486406391460E+00, -0.8543868360574620E+00, & -0.5056166845687340E+00, 0.8542509316027460E+00, -0.1208598946779390E+00, & -0.1208657310279020E+00, -0.5055984823689040E+00, 0.8542608791752970E+00, & -0.5053307603087600E+00, -0.8544103980209300E+00, 0.1209284682756170E+00, & -0.8543680863966890E+00, 0.1209284250962590E+00, -0.5054023040614261E+00, & 0.8543001861498960E+00, -0.1208044489183890E+00, -0.5055467110621700E+00, & 0.7444632973046910E+00, 0.6439458791655150E+00, 0.1763748952430030E+00, & 0.6438740925860960E+00, 0.1763526546392770E+00, 0.7445306535651250E+00, & -0.7444394383517560E+00, -0.6439896739556450E+00, 0.1763156897868830E+00, & 0.1762725384812350E+00, 0.7444994067041240E+00, 0.6439321591554410E+00, & -0.6439272279941870E+00, 0.1763373486135990E+00, -0.7444883239726789E+00, & 0.1764171560921340E+00, -0.7444453593527010E+00, -0.6439550403363510E+00, & -0.6437732764367420E+00, -0.1765375814946370E+00, 0.7445740063055700E+00, & -0.1761862890755310E+00, -0.7446599355387570E+00, 0.6437701235264091E+00, & 0.6438276103095120E+00, -0.1761530561791470E+00, -0.7446180960746860E+00, & -0.1765038577432470E+00, 0.7446064263886381E+00, -0.6437450255982510E+00, & 0.7446425637975280E+00, -0.6437113057563880E+00, -0.1764743806405070E+00, & -0.7446660895457380E+00, 0.6437550517808310E+00, -0.1762153466282650E+00, & -0.2283360715319860E+00, 0.9732852424848990E+00, -0.2405151135480500E-01, & 0.9733064515717200E+00, -0.2400727784605000E-01, -0.2282503054527860E+00, & 0.2283331981063670E+00, -0.9732791056699990E+00, -0.2432556492099900E-01, & -0.2408702223521400E-01, -0.2283063346170040E+00, 0.9732913402129850E+00, & -0.9732989361424010E+00, -0.2436839438764100E-01, 0.2282440848281470E+00, & -0.2428855197935900E-01, 0.2282995532397890E+00, -0.9732879225764900E+00, & -0.9733371742315819E+00, 0.2406421970882400E-01, -0.2281132582483620E+00, & 0.2421829905214100E-01, 0.2280639631571710E+00, 0.9733449042862790E+00, & 0.9733297074180570E+00, 0.2431156319331100E-01, 0.2281188912663230E+00, & 0.2415744670603300E-01, -0.2280561009745210E+00, -0.9733482586294300E+00, & -0.2280265869033880E+00, -0.9733570472797149E+00, 0.2408182252460000E-01, & 0.2280302830467680E+00, 0.9733509134612350E+00, 0.2429381151218600E-01, & 0.7141882216414780E+00, 0.5385777705783590E+00, -0.4470672981861090E+00, & 0.5385274786436980E+00, -0.4470918044321980E+00, 0.7142108044234720E+00, & -0.7142487687796120E+00, -0.5384672206579190E+00, -0.4471037335716890E+00, & -0.4471613350315650E+00, 0.7141657502813270E+00, 0.5385294992643370E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:20) = reshape ( (/ & -0.5383895843123190E+00, -0.4470804117879510E+00, -0.7143218888565050E+00, & -0.4470109694572090E+00, -0.7143051130884170E+00, -0.5384694964440140E+00, & -0.5384320154150550E+00, 0.4469136813525910E+00, 0.7143942372359660E+00, & 0.4472327482991630E+00, -0.7143004980317570E+00, 0.5382914334822370E+00, & 0.5382930399261510E+00, 0.4472578784152030E+00, -0.7142835524934020E+00, & 0.4469384509810380E+00, 0.7144394343055710E+00, -0.5383514797451630E+00, & 0.7144166137892710E+00, -0.5383541595409150E+00, 0.4469717002751600E+00, & -0.7143571305190370E+00, 0.5382432243381430E+00, 0.4472003147703360E+00, & -0.8838226247963700E+00, 0.2646362039654440E+00, 0.3857787545327180E+00, & 0.2647035776402780E+00, 0.3858370666585500E+00, -0.8837769933511300E+00, & 0.8838743905237270E+00, -0.2647316811045790E+00, 0.3855946042099840E+00, & 0.3858426620308480E+00, -0.8837798638376970E+00, 0.2646858372334470E+00, & -0.2648227787783800E+00, 0.3855352957965560E+00, 0.8838729725108470E+00, & 0.3855302957630180E+00, 0.8839005568372480E+00, -0.2647379773883650E+00, & -0.2648230436494790E+00, -0.3856162950490920E+00, -0.8838375577813140E+00, & -0.3858066593719060E+00, 0.8837138197040250E+00, 0.2649586881919760E+00, & 0.2649414017790060E+00, -0.3857554525672310E+00, 0.8837413560754220E+00, & -0.3855652667157560E+00, -0.8838346669397210E+00, -0.2649069772919530E+00, & -0.8837919506738630E+00, -0.2649137504830990E+00, -0.3856585182892600E+00, & 0.8837398529718770E+00, 0.2650088880255400E+00, -0.3857125374378070E+00 & /), (/ 3, 20 /) ) x(1:3,101:120) = temp(1:3,1:20) return end subroutine design_16_144_3d ( x ) ! !******************************************************************************* ! !! DESIGN_16_144_3D returns a 16-design of 144 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,144), the coordinates of the points. ! implicit none ! real x(3,144) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & 0.9383118258138560E+00, -0.1750792557749200E+00, -0.2981915017822760E+00, & -0.1751096322456290E+00, -0.2982825311210240E+00, 0.9382772235980340E+00, & -0.9383116523013461E+00, 0.1751477614500080E+00, -0.2981518150449020E+00, & -0.2981827578157150E+00, 0.9383270575537280E+00, -0.1750125024219040E+00, & 0.1750977124101310E+00, -0.2980583478457380E+00, -0.9383506873169580E+00, & -0.2981854777577620E+00, -0.9383236127415390E+00, 0.1750263369497320E+00, & 0.1751212256614090E+00, 0.2980709997422250E+00, 0.9383422805328110E+00, & 0.2981590222823750E+00, -0.9382974848874340E+00, -0.1752113788700180E+00, & -0.1751366381351110E+00, 0.2982885002265250E+00, -0.9382702854803310E+00, & 0.2981750565054620E+00, 0.9382926280748330E+00, 0.1752101018160420E+00, & 0.9383097216767580E+00, 0.1750911370548140E+00, 0.2981911466354040E+00, & -0.9383070207140820E+00, -0.1751442959881740E+00, 0.2981684263322820E+00, & 0.3183193898656830E+00, -0.1895522954118680E+00, 0.9288394335619220E+00, & -0.1894661062614570E+00, 0.9288339463361680E+00, 0.3183867062421130E+00, & -0.3182933144730710E+00, 0.1893628596173800E+00, 0.9288870078536330E+00, & 0.9288529435535660E+00, 0.3183507003489590E+00, -0.1894334733863170E+00, & 0.1894416073975330E+00, 0.9288927988957520E+00, -0.3182295485121640E+00, & 0.9288662644063450E+00, -0.3183138373071290E+00, 0.1894301027466670E+00, & 0.1894518259149400E+00, -0.9288871565521020E+00, 0.3182399347191460E+00, & -0.9288657503320540E+00, -0.3182891226867960E+00, -0.1894741466251780E+00, & -0.1894810419822530E+00, -0.9288341329001750E+00, -0.3183772735119440E+00, & -0.9288638749080860E+00, 0.3182773954415380E+00, 0.1895030380803610E+00, & 0.3182754841245910E+00, 0.1895728238082200E+00, -0.9288502897015400E+00, & -0.3183459025831120E+00, -0.1893534180173150E+00, -0.9288709110493790E+00, & 0.4152709071162880E+00, 0.6265468605244530E+00, 0.6595370385882560E+00, & 0.6266126549472570E+00, 0.6594514158910070E+00, 0.4153076097777360E+00, & -0.4152418281129630E+00, -0.6266763943801670E+00, 0.6594322716641020E+00, & 0.6594942179223080E+00, 0.4151968471621200E+00, 0.6266410093775210E+00, & -0.6266189964270690E+00, 0.6595218123324770E+00, -0.4151862381804330E+00, & 0.6594787856877939E+00, -0.4151922150229020E+00, -0.6266603193215040E+00, & -0.6266022331854350E+00, -0.6595287758101400E+00, 0.4152004759696260E+00, & -0.6594726936833410E+00, -0.4153261780732930E+00, 0.6265779537240910E+00, & 0.6266060528732360E+00, -0.6594438365947900E+00, -0.4153296051087230E+00, & -0.6594986338231030E+00, 0.4153157815166040E+00, -0.6265575421369630E+00, & 0.4152509631584860E+00, -0.6265428543902710E+00, -0.6595534013318720E+00, & -0.4152672330732850E+00, 0.6266741585574390E+00, -0.6594183983875370E+00, & 0.8147686975402800E-01, 0.8847674930322230E+00, 0.4588551001880220E+00, & 0.8848021501705901E+00, 0.4587806295976860E+00, 0.8151986849505800E-01, & -0.8148097265168000E-01, -0.8848439651039500E+00, 0.4587068873636580E+00, & 0.4587780511560210E+00, 0.8139667888042000E-01, 0.8848148283368230E+00, & -0.8848095158928860E+00, 0.4587845170278200E+00, -0.8141798032957800E-01, & 0.4587323275728680E+00, -0.8138617295209800E-01, -0.8848395009784490E+00, & -0.8848064690255750E+00, -0.4587847998886890E+00, 0.8144949208920500E-01, & -0.4587707681467430E+00, -0.8156762447812400E-01, 0.8848028621851550E+00, & 0.8848211768135870E+00, -0.4587411019232240E+00, -0.8153579869288199E-01, & -0.4588108991167440E+00, 0.8157388735636099E-01, -0.8847814757064350E+00, & 0.8147060004176100E-01, -0.8847779034947540E+00, -0.4588361393964780E+00, & -0.8149754501781800E-01, 0.8848501095969900E+00, -0.4586920902983440E+00, & -0.7225816121467720E+00, 0.6911694469079300E+00, -0.1267317830534700E-01, & 0.6911462318877840E+00, -0.1272247709073500E-01, -0.7226029509516230E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.7225897391740940E+00, -0.6911572322235680E+00, -0.1287436155202900E-01, & -0.1271999109003300E-01, -0.7226498291394290E+00, 0.6910972625263569E+00, & -0.6911640879369000E+00, -0.1283280970189800E-01, 0.7225839207604250E+00, & -0.1274089462228200E-01, 0.7226581266795230E+00, -0.6910882009904870E+00, & -0.6911848254516650E+00, 0.1280693240541800E-01, -0.7225645435168510E+00, & 0.1278690708865000E-01, 0.7225094351193579E+00, 0.6912428018942500E+00, & 0.6911667589030220E+00, 0.1267926954320300E-01, 0.7225840764307940E+00, & 0.1279840273451600E-01, -0.7225177746588930E+00, -0.6912338722815931E+00, & -0.7225871989731150E+00, -0.6911634956048890E+00, 0.1267920436853000E-01, & 0.7225783528006580E+00, 0.6911703359443890E+00, 0.1280979212978900E-01, & 0.5601175739954590E+00, 0.8068680228904130E+00, 0.1877026822886580E+00, & 0.8068834787163790E+00, 0.1875714426539700E+00, 0.5601392734626480E+00, & -0.5601340935408990E+00, -0.8068916312063850E+00, 0.1875518401461700E+00, & 0.1876521312373620E+00, 0.5600251494167630E+00, 0.8069439321680340E+00, & -0.8068854415129990E+00, 0.1876857418815800E+00, -0.5600981579765580E+00, & 0.1876302229010670E+00, -0.5600047208391949E+00, -0.8069632036790220E+00, & -0.8068746775941580E+00, -0.1876975169586680E+00, 0.5601097185238560E+00, & -0.1876148088020380E+00, -0.5602157603217920E+00, 0.8068202931293010E+00, & 0.8068923207022480E+00, -0.1875761333114300E+00, -0.5601249655243670E+00, & -0.1876364876816170E+00, 0.5602249742367100E+00, -0.8068088539003420E+00, & 0.5600918210887200E+00, -0.8068808651992270E+00, -0.1877243226778800E+00, & -0.5601293840974760E+00, 0.8068962450831860E+00, -0.1875460549871360E+00, & -0.9948563422103200E-01, -0.3588951295179950E+00, -0.9280608248341810E+00, & -0.3590507942888110E+00, -0.9279946080877720E+00, -0.9954162185034500E-01, & 0.9943438966061501E-01, 0.3591437619459990E+00, -0.9279701290494740E+00, & -0.9280190267200989E+00, -0.9942019096838001E-01, -0.3590213248169130E+00, & 0.3589908155319930E+00, -0.9280357484444770E+00, 0.9937426212442400E-01, & -0.9280072072034909E+00, 0.9942025966856401E-01, 0.3590518560679110E+00, & 0.3590029825622480E+00, 0.9280313484672880E+00, -0.9937139816565700E-01, & 0.9280179389220590E+00, 0.9951094937970199E-01, -0.3589989916314580E+00, & -0.3590428637423850E+00, 0.9279961920762100E+00, 0.9955545935668900E-01, & 0.9280136656320840E+00, -0.9948954910509600E-01, 0.3590159690305810E+00, & -0.9945187531254500E-01, 0.3589267513480540E+00, 0.9280522138670591E+00, & 0.9946550331739699E-01, -0.3591200632919870E+00, 0.9279759661709870E+00, & 0.7878331994376070E+00, 0.5574500823251660E+00, -0.2618554096816970E+00, & 0.5574053886878521E+00, -0.2619772920486170E+00, 0.7878243021845780E+00, & -0.7878614778767180E+00, -0.5573641116878389E+00, -0.2619533139327300E+00, & -0.2618610280706080E+00, 0.7878026576023160E+00, 0.5574906049903740E+00, & -0.5574272044780030E+00, -0.2618353048552930E+00, -0.7878560686059189E+00, & -0.2618500918686550E+00, -0.7878041469245110E+00, -0.5574936371627220E+00, & -0.5573980474810630E+00, 0.2618066241900950E+00, 0.7878862279507650E+00, & 0.2619281468060600E+00, -0.7878933745001880E+00, 0.5573308499710470E+00, & 0.5573998343635920E+00, 0.2619357785378840E+00, -0.7878420352920970E+00, & 0.2619095353283640E+00, 0.7879083713373940E+00, -0.5573183952468600E+00, & 0.7878589677335660E+00, -0.5574443214494930E+00, 0.2617901362647470E+00, & -0.7878560239272930E+00, 0.5573693294883240E+00, 0.2619586152567080E+00, & -0.5072827321686140E+00, -0.7170499460473529E+00, -0.4780205063771150E+00, & -0.7170643140017600E+00, -0.4779062710060660E+00, -0.5073700481091310E+00, & 0.5073317531927670E+00, 0.7171162628030801E+00, -0.4778689755839950E+00, & -0.4778916169164080E+00, -0.5072575026701600E+00, -0.7171536993321960E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:44) = reshape ( (/ & 0.7171087443614590E+00, -0.4779885176598600E+00, 0.5072297563685140E+00, & -0.4779136769269750E+00, 0.5072353404128420E+00, 0.7171546742805260E+00, & 0.7171036377589221E+00, 0.4779420929439370E+00, -0.5072807196270021E+00, & 0.4779497913306490E+00, 0.5073623117813870E+00, -0.7170407809538000E+00, & -0.7170736052366210E+00, 0.4778899243873540E+00, 0.5073723138307850E+00, & 0.4779668855044820E+00, -0.5073968954290570E+00, 0.7170049141185160E+00, & -0.5072894944901550E+00, 0.7170398743210130E+00, 0.4780284378712520E+00, & 0.5073429733358930E+00, -0.7171476166924809E+00, 0.4778100075123900E+00, & -0.4697053900856580E+00, -0.3362487640635100E+00, 0.8162803533040850E+00, & -0.3361804588591880E+00, 0.8163540175197370E+00, -0.4696262526314000E+00, & 0.4697292672795090E+00, 0.3360874275716510E+00, 0.8163330548797630E+00, & 0.8162993201022140E+00, -0.4696884809882010E+00, -0.3362263386881820E+00, & 0.3361661885920780E+00, 0.8162610446461910E+00, 0.4697980423975660E+00, & 0.8163081878411480E+00, 0.4696844879905110E+00, 0.3362103868184210E+00, & 0.3361611964247630E+00, -0.8162545204851160E+00, -0.4698129498065010E+00, & -0.8163147475476900E+00, 0.4697491969062010E+00, -0.3361040388661380E+00, & -0.3361667115393140E+00, -0.8163550823770680E+00, 0.4696342422885870E+00, & -0.8163020291364350E+00, -0.4697523383167870E+00, 0.3361305369549900E+00, & -0.4697259147648690E+00, 0.3362543092749910E+00, -0.8162662583326020E+00, & 0.4697157090205860E+00, -0.3360825711370180E+00, -0.8163428557151829E+00, & 0.2209757831175440E+00, 0.5619818996413199E+00, -0.7970859726222270E+00, & 0.5618985433861100E+00, -0.7971884426164270E+00, 0.2208180560990520E+00, & -0.2209098087123600E+00, -0.5618199356383180E+00, -0.7972184244822900E+00, & -0.7971433029261999E+00, 0.2209065606243460E+00, 0.5619277943588750E+00, & -0.5619110464580350E+00, -0.7971135607042630E+00, -0.2210564344456110E+00, & -0.7971666081668140E+00, -0.2209214541641100E+00, -0.5618888768376120E+00, & -0.5619031892145560E+00, 0.7971171958991410E+00, 0.2210632985196790E+00, & 0.7971490712061960E+00, -0.2210199177081820E+00, 0.5618750343727400E+00, & 0.5618715451873800E+00, 0.7971902229922720E+00, -0.2208803184402730E+00, & 0.7971513117794931E+00, 0.2209665013294830E+00, -0.5618928647157230E+00, & 0.2209896742277390E+00, -0.5619592284389200E+00, 0.7970981052900900E+00, & -0.2209345147362070E+00, 0.5618214796441769E+00, 0.7972104899013210E+00, & -0.2558632109166300E-01, 0.9914006599926770E+00, -0.1283357765359230E+00, & 0.9913910231541920E+00, -0.1284105096544480E+00, -0.2558476538037500E-01, & 0.2555531861480000E-01, -0.9913788670530650E+00, -0.1285101850091180E+00, & -0.1284273557345780E+00, -0.2568716764003100E-01, 0.9913861930235141E+00, & -0.9913884123582900E+00, -0.1284322897283740E+00, 0.2557660643704000E-01, & -0.1284710461501210E+00, 0.2569665752758400E-01, -0.9913802863144920E+00, & -0.9913887704923130E+00, 0.1284336117570290E+00, -0.2555607780520200E-01, & 0.1284346430688090E+00, 0.2546732329508000E-01, 0.9913909208299070E+00, & 0.9913860541495390E+00, 0.1284483459343360E+00, 0.2558738096289900E-01, & 0.1283929891583590E+00, -0.2544975216483000E-01, -0.9913967674194480E+00, & -0.2558970505166500E-01, -0.9913982207318930E+00, 0.1283539439402070E+00, & 0.2557174693595500E-01, 0.9913764768665120E+00, 0.1285253549864190E+00 & /), (/ 3, 44 /) ) x(1:3,101:144) = temp(1:3,1:44) return end subroutine design_17_156_3d ( x ) ! !******************************************************************************* ! !! DESIGN_17_156_3D returns a 17-design of 156 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,156), the coordinates of the points. ! implicit none ! real x(3,156) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & -0.5389531643378300E-01, -0.1406035066764100E+00, -0.9885979712586910E+00, & -0.1406020108260560E+00, -0.9885983027651530E+00, -0.5389313798182900E-01, & 0.5389273741214000E-01, 0.1406029924863770E+00, -0.9885981849862470E+00, & -0.9885980986472160E+00, -0.5389529965961800E-01, -0.1406026174212630E+00, & 0.1406044785163560E+00, -0.9885978843519180E+00, 0.5389437518011600E-01, & -0.9885980658632700E+00, 0.5389281342061700E-01, 0.1406038009195060E+00, & 0.1406018124157300E+00, 0.9885982766199050E+00, -0.5389413520565200E-01, & 0.9885980025098750E+00, 0.5389565255163500E-01, -0.1406031581064890E+00, & -0.1406048466356920E+00, 0.9885978500353531E+00, 0.5389404427235700E-01, & 0.9885981673609280E+00, -0.5389245072780000E-01, 0.1406032262971460E+00, & -0.5389283591088400E-01, 0.1406027515842190E+00, 0.9885982138788380E+00, & 0.5389609745044300E-01, -0.1406037938522460E+00, 0.9885978878360840E+00, & -0.7121378206194821E+00, 0.4847259556271390E+00, 0.5078390221169400E+00, & 0.4847271423032010E+00, 0.5078385891579620E+00, -0.7121373216428299E+00, & 0.7121378784277490E+00, -0.4847268954121660E+00, 0.5078380440381630E+00, & 0.5078397607384350E+00, -0.7121379693767980E+00, 0.4847249632369050E+00, & -0.4847276428704660E+00, 0.5078383908533870E+00, 0.7121371223385879E+00, & 0.5078396078145549E+00, 0.7121361919763640E+00, -0.4847277347255500E+00, & -0.4847267680672810E+00, -0.5078392368723810E+00, -0.7121371144744010E+00, & -0.5078401126327480E+00, 0.7121362579125310E+00, 0.4847271089669900E+00, & 0.4847285491224600E+00, -0.5078400954114271E+00, 0.7121352899261120E+00, & -0.5078388610154030E+00, -0.7121374661713530E+00, -0.4847266451492260E+00, & -0.7121366718689039E+00, -0.4847276329363270E+00, -0.5078390320243490E+00, & 0.7121377658573640E+00, 0.4847264015559710E+00, -0.5078386732755610E+00, & -0.7030054480395250E+00, 0.2617901117095170E+00, 0.6612482721624801E+00, & 0.2617908536144600E+00, 0.6612471360366760E+00, -0.7030062404041000E+00, & 0.7030064339445450E+00, -0.2617905690855730E+00, 0.6612470429199860E+00, & 0.6612494875894130E+00, -0.7030044337858500E+00, 0.2617897653464990E+00, & -0.2617917110517330E+00, 0.6612472320733990E+00, 0.7030058307723160E+00, & 0.6612474233592150E+00, 0.7030059089592190E+00, -0.2617910179307560E+00, & -0.2617910421351510E+00, -0.6612484386100850E+00, -0.7030049449993340E+00, & -0.6612490446749040E+00, 0.7030044247634020E+00, 0.2617909083211350E+00, & 0.2617922462673400E+00, -0.6612489166629980E+00, 0.7030040469345190E+00, & -0.6612472545309420E+00, -0.7030062605254830E+00, -0.2617905002807940E+00, & -0.7030054694842800E+00, -0.2617913268030810E+00, -0.6612477683031300E+00, & 0.7030051584635270E+00, 0.2617910253582180E+00, -0.6612482183080450E+00, & 0.6280044724638099E-01, 0.7862188199982439E+00, -0.6147487868277770E+00, & 0.7862200431089770E+00, -0.6147474493883091E+00, 0.6279822676069299E-01, & -0.6279950225219801E-01, -0.7862192395650210E+00, -0.6147483467685591E+00, & -0.6147477070961400E+00, 0.6279957151438099E-01, 0.7862197341949950E+00, & -0.7862185345191240E+00, -0.6147492348350890E+00, -0.6279963573361200E-01, & -0.6147493306965400E+00, -0.6279995662861700E-01, -0.7862184339327080E+00, & -0.7862195385712860E+00, 0.6147479435281090E+00, 0.6279970618335100E-01, & 0.6147493951504540E+00, -0.6279977045814100E-01, 0.7862183984062920E+00, & 0.7862177984580020E+00, 0.6147501790519670E+00, -0.6279960782860100E-01, & 0.6147478002140190E+00, 0.6280005812960500E-01, -0.7862196225171070E+00, & 0.6280052636345899E-01, -0.7862189094158020E+00, 0.6147486643869180E+00, & -0.6280141239775699E-01, 0.7862187128109530E+00, 0.6147488253154580E+00, & 0.8295436077392320E+00, 0.3214653682205850E+00, 0.4566370767839410E+00, & 0.3214635955020470E+00, 0.4566373806324790E+00, 0.8295441274435040E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.8295434450385299E+00, -0.3214644597436460E+00, 0.4566380119036660E+00, & 0.4566350005565370E+00, 0.8295451597747751E+00, 0.3214643124220390E+00, & -0.3214642002577900E+00, 0.4566374595738670E+00, -0.8295438496345710E+00, & 0.4566370685585350E+00, -0.8295440001148970E+00, -0.3214643673747430E+00, & -0.3214629541954330E+00, -0.4566364211023370E+00, 0.8295449041509410E+00, & -0.4566367130348990E+00, -0.8295441909717370E+00, 0.3214643798832610E+00, & 0.3214629551065890E+00, -0.4566366887995170E+00, -0.8295447564395499E+00, & -0.4566371123963230E+00, 0.8295440985782710E+00, -0.3214640510170780E+00, & 0.8295447019765780E+00, -0.3214622985067580E+00, -0.4566372499712900E+00, & -0.8295448614467950E+00, 0.3214635893905120E+00, -0.4566360515151940E+00, & -0.2495004234484620E+00, 0.9540250943623850E+00, -0.1660893073797370E+00, & 0.9540254708554060E+00, -0.1660875670107380E+00, -0.2495001423718530E+00, & 0.2495009434844220E+00, -0.9540250296126640E+00, -0.1660888981026120E+00, & -0.1660868774086620E+00, -0.2495001374496830E+00, 0.9540255921961580E+00, & -0.9540248553834940E+00, -0.1660899370031220E+00, 0.2495009181081350E+00, & -0.1660901519985670E+00, 0.2495001071183790E+00, -0.9540250300474360E+00, & -0.9540255936888939E+00, 0.1660878626585790E+00, -0.2494994758793280E+00, & 0.1660896928744990E+00, 0.2494996878225310E+00, 0.9540252196337971E+00, & 0.9540249314198170E+00, 0.1660906479136480E+00, 0.2495001541182640E+00, & 0.1660879561220760E+00, -0.2495000023520480E+00, -0.9540254397328820E+00, & -0.2494997599825380E+00, -0.9540252259304089E+00, 0.1660895483077950E+00, & 0.2494983747081790E+00, 0.9540257202571130E+00, 0.1660887898260250E+00, & 0.8607872157664440E+00, 0.4186303330445690E+00, -0.2894719562030950E+00, & 0.4186314255109590E+00, -0.2894739329391020E+00, 0.8607860197072390E+00, & -0.8607867717364260E+00, -0.4186306871370340E+00, -0.2894727645060190E+00, & -0.2894744465036730E+00, 0.8607866519642620E+00, 0.4186297703479170E+00, & -0.4186298892623020E+00, -0.2894728382265150E+00, -0.8607871349789790E+00, & -0.2894723996931710E+00, -0.8607875560309860E+00, -0.4186293267296020E+00, & -0.4186292573884460E+00, 0.2894725949335480E+00, 0.8607875240968800E+00, & 0.2894731851561890E+00, -0.8607878175448240E+00, 0.4186282458720980E+00, & 0.4186289424246520E+00, 0.2894727563162090E+00, -0.8607876230029770E+00, & 0.2894735427627720E+00, 0.8607866031630780E+00, -0.4186304956107950E+00, & 0.8607880122617581E+00, -0.4186286769276890E+00, 0.2894719827551960E+00, & -0.8607878393611090E+00, 0.4186284794744050E+00, 0.2894727824528270E+00, & -0.1691041295942500E+00, -0.8789173916920940E+00, 0.4459910446806490E+00, & -0.8789181750666980E+00, 0.4459895744177420E+00, -0.1691039356375460E+00, & 0.1691023334883080E+00, 0.8789182061434621E+00, 0.4459901206510830E+00, & 0.4459894690345720E+00, -0.1691039825983880E+00, -0.8789182195060160E+00, & 0.8789165401716110E+00, 0.4459924431702190E+00, 0.1691048670140030E+00, & 0.4459902241080140E+00, 0.1691041980057110E+00, 0.8789177949142500E+00, & 0.8789182853189470E+00, -0.4459889689345610E+00, -0.1691049594798730E+00, & -0.4459914048704790E+00, 0.1691046511475080E+00, -0.8789171085727800E+00, & -0.8789175018706720E+00, -0.4459905576894250E+00, 0.1691048413183190E+00, & -0.4459886381463000E+00, -0.1691042398787440E+00, 0.8789185916223650E+00, & -0.1691036827918700E+00, 0.8789180817859170E+00, -0.4459898541177720E+00, & 0.1691042183067080E+00, -0.8789179365417820E+00, -0.4459899373035370E+00, & 0.6991597494364490E+00, 0.6826055934699530E+00, 0.2126622875159000E+00, & 0.6826036001105980E+00, 0.2126624328405610E+00, 0.6991616513899950E+00, & -0.6991612748012420E+00, -0.6826040568208240E+00, 0.2126622049872900E+00, & 0.2126608434125310E+00, 0.6991621013472430E+00, 0.6826036344166200E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.6826047628202950E+00, 0.2126619851953860E+00, -0.6991606523738350E+00, & 0.2126625942230910E+00, -0.6991616996786060E+00, -0.6826035003725280E+00, & -0.6826025624027640E+00, -0.2126623681590730E+00, 0.6991626841945699E+00, & -0.2126612305468040E+00, -0.6991609500605910E+00, 0.6826046930198260E+00, & 0.6826033952274170E+00, -0.2126617699757900E+00, -0.6991620530426170E+00, & -0.2126618767979380E+00, 0.6991622129811330E+00, -0.6826031981291210E+00, & 0.6991620776118520E+00, -0.6826026485321290E+00, -0.2126640859346050E+00, & -0.6991619828086700E+00, 0.6826032705883111E+00, -0.2126624009485230E+00, & -0.8932543729812280E+00, -0.1723424150411760E+00, -0.4152044281166660E+00, & -0.1723416913831600E+00, -0.4152051051823470E+00, -0.8932541978864180E+00, & 0.8932544795129390E+00, 0.1723418657252130E+00, -0.4152044269374090E+00, & -0.4152037601443590E+00, -0.8932549611410140E+00, -0.1723409758558650E+00, & 0.1723436211169660E+00, -0.4152058956702590E+00, 0.8932534581298580E+00, & -0.4152063344497700E+00, 0.8932537022259500E+00, 0.1723412988590360E+00, & 0.1723405995636110E+00, 0.4152042778538470E+00, -0.8932547930987670E+00, & 0.4152040134618810E+00, 0.8932546529877980E+00, -0.1723419627391880E+00, & -0.1723411946292100E+00, 0.4152043287490480E+00, 0.8932546546320540E+00, & 0.4152061427713250E+00, -0.8932540159148660E+00, 0.1723401347827120E+00, & -0.8932544146433700E+00, 0.1723402748586850E+00, 0.4152052268237520E+00, & 0.8932547053896590E+00, -0.1723405507866280E+00, 0.4152044867939110E+00, & -0.3011910729024200E-01, 0.5380310043275850E+00, -0.8423867744440729E+00, & 0.5380327159133010E+00, -0.8423856691864600E+00, -0.3011944481952300E-01, & 0.3011808764135300E-01, -0.5380315902624120E+00, -0.8423864366646280E+00, & -0.8423861832095870E+00, -0.3011934729278300E-01, 0.5380319165776710E+00, & -0.5380303041055450E+00, -0.8423872336366450E+00, 0.3011877271892400E-01, & -0.8423873127238229E+00, 0.3011790102264100E-01, -0.5380302290763280E+00, & -0.5380317233086820E+00, 0.8423863249999340E+00, -0.3011883408426400E-01, & 0.8423871030981440E+00, 0.3011978965830300E-01, 0.5380304515590700E+00, & 0.5380291730323310E+00, 0.8423879687460450E+00, 0.3011841758887700E-01, & 0.8423863305324070E+00, -0.3011744117944100E-01, -0.5380317926191250E+00, & -0.3011705911664400E-01, -0.5380307391371790E+00, 0.8423870170495660E+00, & 0.3011834681252400E-01, 0.5380307101818240E+00, 0.8423869895045401E+00, & 0.9519058810513840E+00, -0.3017741210977390E+00, 0.5298654032370100E-01, & -0.3017744053434990E+00, 0.5298679853019400E-01, 0.9519057765667240E+00, & -0.9519056988554310E+00, 0.3017745999000000E+00, 0.5298708655653000E-01, & 0.5298761295842300E-01, 0.9519052380669770E+00, -0.3017759609604790E+00, & 0.3017745623980470E+00, 0.5298683421290300E-01, -0.9519057247908330E+00, & 0.5298676682920600E-01, -0.9519052521736440E+00, 0.3017760650303790E+00, & 0.3017772936453360E+00, -0.5298799472785900E-01, 0.9519047943228440E+00, & -0.5298657470118700E-01, -0.9519055918473009E+00, -0.3017750273155070E+00, & -0.3017769418414010E+00, -0.5298652631673400E-01, -0.9519049875915860E+00, & -0.5298879489611200E-01, 0.9519052401764430E+00, 0.3017757467724780E+00, & 0.9519048618122400E+00, 0.3017774620595560E+00, -0.5298582311443300E-01, & -0.9519050185943480E+00, -0.3017768243243040E+00, -0.5298663865195100E-01, & 0.5536061463002190E+00, 0.4544011566904800E+00, 0.6978823852032480E+00, & 0.4543996192985590E+00, 0.6978827381162330E+00, 0.5536069633058400E+00, & -0.5536058140188820E+00, -0.4544011281970970E+00, 0.6978826673429410E+00, & 0.6978809697722890E+00, 0.5536078912532600E+00, 0.4544012046328750E+00, & -0.4544007964543470E+00, 0.6978822688342310E+00, -0.5536065886786770E+00, & 0.6978825206532540E+00, -0.5536051035411030E+00, -0.4544022190745830E+00 & /), (/ 3, 50 /) ) x(1:3,101:150) = temp(1:3,1:50) temp(1:3,1:6) = reshape ( (/ & -0.4544001809008960E+00, -0.6978821410325180E+00, 0.5536072550329360E+00, & -0.6978816353908840E+00, -0.5536070488477030E+00, 0.4544012086804820E+00, & 0.4544012718187750E+00, -0.6978817257806300E+00, -0.5536068830776310E+00, & -0.6978823219163300E+00, 0.5536063431414440E+00, -0.4544010140726250E+00, & 0.5536060294802920E+00, -0.4544003068459940E+00, -0.6978830312175039E+00, & -0.5536069608106720E+00, 0.4544008427162030E+00, -0.6978819435124930E+00 & /), (/ 3, 6 /) ) x(1:3,151:156) = temp(1:3,1:6) return end subroutine design_18_180_3d ( x ) ! !******************************************************************************* ! !! DESIGN_18_180_3D returns an 18-design of 180 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,180), the coordinates of the points. ! implicit none ! real x(3,180) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & -0.8663763436416970E+00, 0.2236968045802250E+00, 0.4464882650178410E+00, & 0.2236968062120170E+00, 0.4464882653478410E+00, -0.8663763430503050E+00, & 0.8663763431155790E+00, -0.2236968062252930E+00, 0.4464882652145300E+00, & 0.4464882636797900E+00, -0.8663763440671450E+00, 0.2236968056031530E+00, & -0.2236968042860020E+00, 0.4464882650235440E+00, 0.8663763437147251E+00, & 0.4464882628495670E+00, 0.8663763449479410E+00, -0.2236968038489200E+00, & -0.2236968055886000E+00, -0.4464882635825370E+00, -0.8663763441210220E+00, & -0.4464882648104650E+00, 0.8663763438297410E+00, 0.2236968042658440E+00, & 0.2236968038013990E+00, -0.4464882628087740E+00, 0.8663763449812339E+00, & -0.4464882650149240E+00, -0.8663763432190640E+00, -0.2236968062229010E+00, & -0.8663763449212000E+00, -0.2236968040744080E+00, -0.4464882627884830E+00, & 0.8663763441725580E+00, 0.2236968054822140E+00, -0.4464882635358360E+00, & -0.8068447839335680E+00, -0.4617580792431280E+00, -0.3684846956019890E+00, & -0.4617580817749450E+00, -0.3684846983908350E+00, -0.8068447812109451E+00, & 0.8068447813350600E+00, 0.4617580816135860E+00, -0.3684846983212730E+00, & -0.3684846979683570E+00, -0.8068447817064940E+00, -0.4617580812461950E+00, & 0.4617580789457650E+00, -0.3684846957167930E+00, 0.8068447840513190E+00, & -0.3684846977025540E+00, 0.8068447831055050E+00, 0.4617580790137720E+00, & 0.4617580812172950E+00, 0.3684846984438830E+00, -0.8068447815058620E+00, & 0.3684846954813280E+00, 0.8068447841829690E+00, -0.4617580789036290E+00, & -0.4617580789678360E+00, 0.3684846979360600E+00, 0.8068447830251509E+00, & 0.3684846984606100E+00, -0.8068447812133080E+00, 0.4617580817151360E+00, & -0.8068447827741030E+00, 0.4617580793147060E+00, 0.3684846980510910E+00, & 0.8068447817099870E+00, -0.4617580810987120E+00, 0.3684846981455260E+00, & -0.1348424188581120E+00, -0.4002166950757200E-01, 0.9900584770842180E+00, & -0.4002166997561800E-01, 0.9900584770162760E+00, -0.1348424192180460E+00, & 0.1348424189813570E+00, 0.4002166978894200E-01, 0.9900584770560580E+00, & 0.9900584769241170E+00, -0.1348424204361430E+00, -0.4002166815140200E-01, & 0.4002166967746100E-01, 0.9900584771169210E+00, 0.1348424185675700E+00, & 0.9900584772860210E+00, 0.1348424178553970E+00, 0.4002166789374300E-01, & 0.4002166803783600E-01, -0.9900584769275680E+00, -0.1348424204445070E+00, & -0.9900584771152390E+00, 0.1348424186351910E+00, -0.4002166949123500E-01, & -0.4002166783779800E-01, -0.9900584772708920E+00, 0.1348424179830820E+00, & -0.9900584770420310E+00, -0.1348424190874290E+00, 0.4002166977857500E-01, & -0.1348424181227450E+00, 0.4002166767089100E-01, -0.9900584772586170E+00, & 0.1348424203781130E+00, -0.4002166786721200E-01, -0.9900584769435080E+00, & 0.4979407731320700E-01, -0.2797381565618790E+00, -0.9587841851156540E+00, & -0.2797381571299750E+00, -0.9587841850685120E+00, 0.4979407502941500E-01, & -0.4979407508500500E-01, 0.2797381571118340E+00, -0.9587841850709180E+00, & -0.9587841844609550E+00, 0.4979407742976100E-01, -0.2797381587850680E+00, & 0.2797381566842330E+00, -0.9587841850838510E+00, -0.4979407723819100E-01, & -0.9587841843069630E+00, -0.4979407685685800E-01, 0.2797381594148460E+00, & 0.2797381590129380E+00, 0.9587841843903790E+00, 0.4979407750856700E-01, & 0.9587841850340860E+00, -0.4979407733711300E-01, -0.2797381568371920E+00, & -0.2797381595759920E+00, 0.9587841842431500E+00, -0.4979407718026100E-01, & 0.9587841850167220E+00, 0.4979407490928900E-01, 0.2797381573288650E+00, & 0.4979407703190500E-01, 0.2797381595171780E+00, 0.9587841842680150E+00, & -0.4979407778562100E-01, -0.2797381588886910E+00, 0.9587841844122410E+00, & 0.2054707686707770E+00, -0.1929017430722870E+00, 0.9594637464446030E+00, & -0.1929017443858980E+00, 0.9594637463317141E+00, 0.2054707679646680E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.2054707680866780E+00, 0.1929017446304500E+00, 0.9594637462564179E+00, & 0.9594637457387351E+00, 0.2054707703405020E+00, -0.1929017448046460E+00, & 0.1929017429028800E+00, 0.9594637464476850E+00, -0.2054707688154330E+00, & 0.9594637453663400E+00, -0.2054707716940410E+00, 0.1929017452151490E+00, & 0.1929017448926260E+00, -0.9594637456856751E+00, 0.2054707705056730E+00, & -0.9594637463725330E+00, -0.2054707690642030E+00, -0.1929017430116920E+00, & -0.1929017451220650E+00, -0.9594637453488920E+00, -0.2054707718629080E+00, & -0.9594637462205630E+00, 0.2054707682606520E+00, 0.1929017446234780E+00, & 0.2054707717264440E+00, 0.1929017454605980E+00, -0.9594637453100530E+00, & -0.2054707706527430E+00, -0.1929017449496980E+00, -0.9594637456427050E+00, & -0.2789053920740190E+00, 0.7720048541378570E+00, -0.5711569726963190E+00, & 0.7720048542681720E+00, -0.5711569724663990E+00, -0.2789053921841520E+00, & 0.2789053921602380E+00, -0.7720048542493390E+00, -0.5711569725035320E+00, & -0.5711569716753651E+00, -0.2789053920788350E+00, 0.7720048548914560E+00, & -0.7720048542660130E+00, -0.5711569725335670E+00, 0.2789053920525770E+00, & -0.5711569705671390E+00, 0.2789053915822340E+00, -0.7720048558907699E+00, & -0.7720048550783650E+00, 0.5711569714219210E+00, -0.2789053920804900E+00, & 0.5711569725564700E+00, 0.2789053919520950E+00, 0.7720048542853700E+00, & 0.7720048559951140E+00, 0.5711569703761280E+00, 0.2789053916845750E+00, & 0.5711569724069060E+00, -0.2789053920341090E+00, -0.7720048543663940E+00, & -0.2789053917242620E+00, -0.7720048559398009E+00, 0.5711569704315110E+00, & 0.2789053921850090E+00, 0.7720048549702490E+00, 0.5711569715170171E+00, & 0.9123638599455530E+00, -0.3931981490415770E+00, -0.1139622861104940E+00, & -0.3931981469939110E+00, -0.1139622871432540E+00, 0.9123638606990270E+00, & -0.9123638607831750E+00, 0.3931981468241020E+00, -0.1139622870554620E+00, & -0.1139622883699460E+00, 0.9123638601627020E+00, -0.3931981478828430E+00, & 0.3931981490357560E+00, -0.1139622856815620E+00, -0.9123638600016380E+00, & -0.1139622852598250E+00, -0.9123638610299220E+00, 0.3931981467719950E+00, & 0.3931981476774950E+00, 0.1139622880664040E+00, 0.9123638602891160E+00, & 0.1139622860313020E+00, -0.9123638599292250E+00, -0.3931981491024160E+00, & -0.3931981469123200E+00, 0.1139622850908440E+00, -0.9123638609905540E+00, & 0.1139622873708760E+00, 0.9123638607624560E+00, 0.3931981467807590E+00, & 0.9123638610767000E+00, 0.3931981466410030E+00, 0.1139622853372880E+00, & -0.9123638601990820E+00, -0.3931981478492600E+00, 0.1139622881945650E+00, & 0.8486623369817879E+00, -0.1290998447282500E-01, -0.5287774296332260E+00, & -0.1290998542466000E-01, -0.5287774320354930E+00, 0.8486623354705241E+00, & -0.8486623355528130E+00, 0.1290998521418300E-01, -0.5287774319085620E+00, & -0.5287774335254600E+00, 0.8486623345656930E+00, -0.1290998387823900E-01, & 0.1290998463968200E-01, -0.5287774292818080E+00, -0.8486623371982090E+00, & -0.5287774303861490E+00, -0.8486623365210670E+00, 0.1290998392038200E-01, & 0.1290998394444800E-01, 0.5287774334464800E+00, 0.8486623346138960E+00, & 0.5287774294968270E+00, -0.8486623370671220E+00, -0.1290998444996100E-01, & -0.1290998387164700E-01, 0.5287774304196710E+00, -0.8486623365009220E+00, & 0.5287774322403560E+00, 0.8486623353443260E+00, 0.1290998532959400E-01, & 0.8486623363435590E+00, 0.1290998374355700E-01, 0.5287774306753590E+00, & -0.8486623346681990E+00, -0.1290998365530300E-01, 0.5287774333663861E+00, & -0.6958511320861700E+00, 0.2111647821010340E+00, 0.6864405558929479E+00, & 0.2111647810997110E+00, 0.6864405555444100E+00, -0.6958511327338580E+00, & 0.6958511327414010E+00, -0.2111647813350840E+00, 0.6864405554643570E+00, & 0.6864405538891910E+00, -0.6958511343847570E+00, 0.2111647810401820E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.2111647819305030E+00, 0.6864405559602180E+00, 0.6958511320715590E+00, & 0.6864405535989390E+00, 0.6958511345259980E+00, -0.2111647815182800E+00, & -0.2111647808703600E+00, -0.6864405537379060E+00, -0.6958511345855301E+00, & -0.6864405557764750E+00, 0.6958511322246790E+00, 0.2111647820232230E+00, & 0.2111647814985050E+00, -0.6864405534995720E+00, 0.6958511346300230E+00, & -0.6864405552923321E+00, -0.6958511329810830E+00, -0.2111647811044670E+00, & -0.6958511347448820E+00, -0.2111647815311530E+00, -0.6864405533730940E+00, & 0.6958511344958130E+00, 0.2111647811014860E+00, -0.6864405537577530E+00, & -0.2617181692630290E+00, -0.5816300983962440E+00, 0.7702012909085409E+00, & -0.5816300982908330E+00, 0.7702012915065020E+00, -0.2617181677375720E+00, & 0.2617181678578640E+00, 0.5816300981264260E+00, 0.7702012915897810E+00, & 0.7702012927267941E+00, -0.2617181683217910E+00, -0.5816300964120250E+00, & 0.5816300984506260E+00, 0.7702012908883760E+00, 0.2617181692015180E+00, & 0.7702012932631270E+00, 0.2617181680777750E+00, 0.5816300958116080E+00, & 0.5816300962138030E+00, -0.7702012928812780E+00, -0.2617181683076860E+00, & -0.7702012910515680E+00, 0.2617181691302900E+00, -0.5816300982665770E+00, & -0.5816300957166070E+00, -0.7702012933042760E+00, 0.2617181681678060E+00, & -0.7702012917059650E+00, -0.2617181676410450E+00, 0.5816300980701370E+00, & -0.2617181680763480E+00, 0.5816300956377460E+00, -0.7702012933949069E+00, & 0.2617181684945420E+00, -0.5816300961299260E+00, -0.7702012928811240E+00, & 0.5061364370868440E+00, 0.7009928815969670E+00, 0.5024289870254460E+00, & 0.7009928835685090E+00, 0.5024289853021360E+00, 0.5061364360669680E+00, & -0.5061364361231960E+00, -0.7009928835031120E+00, 0.5024289853367360E+00, & 0.5024289862814260E+00, 0.5061364357644880E+00, 0.7009928830850130E+00, & -0.7009928816351710E+00, 0.5024289869389250E+00, -0.5061364371198200E+00, & 0.5024289861990811E+00, -0.5061364363423220E+00, -0.7009928827268210E+00, & -0.7009928831784340E+00, -0.5024289861247950E+00, 0.5061364357905840E+00, & -0.5024289870991430E+00, -0.5061364370344130E+00, 0.7009928815820030E+00, & 0.7009928826710060E+00, -0.5024289861979140E+00, -0.5061364364207820E+00, & -0.5024289852778980E+00, 0.5061364359559350E+00, -0.7009928836660509E+00, & 0.5061364363001890E+00, -0.7009928827898670E+00, -0.5024289861535630E+00, & -0.5061364358522460E+00, 0.7009928829915320E+00, -0.5024289863234450E+00, & -0.4407481491825780E+00, 0.6022420241579790E+00, 0.6656167165345470E+00, & 0.6022420222600990E+00, 0.6656167183423400E+00, -0.4407481490457330E+00, & 0.4407481491000160E+00, -0.6022420223379980E+00, 0.6656167182359140E+00, & 0.6656167156340270E+00, -0.4407481493907860E+00, 0.6022420250008870E+00, & -0.6022420238049980E+00, 0.6656167168141670E+00, 0.4407481492426140E+00, & 0.6656167165860120E+00, 0.4407481497832090E+00, -0.6022420236615290E+00, & -0.6022420249402080E+00, -0.6656167157609320E+00, -0.4407481492820460E+00, & -0.6656167164623710E+00, 0.4407481494240080E+00, 0.6022420240610620E+00, & 0.6022420238520260E+00, -0.6656167164607441E+00, 0.4407481497120920E+00, & -0.6656167182662930E+00, -0.4407481491798800E+00, -0.6022420222459740E+00, & -0.4407481496557820E+00, -0.6022420238831940E+00, -0.6656167164698300E+00, & 0.4407481492825400E+00, 0.6022420253069330E+00, -0.6656167154287970E+00, & -0.8902578367755301E+00, -0.2935185477582290E+00, 0.3482640466394050E+00, & -0.2935185468996730E+00, 0.3482640436499220E+00, -0.8902578382280660E+00, & 0.8902578381784459E+00, 0.2935185467624440E+00, 0.3482640438924220E+00, & 0.3482640444627600E+00, -0.8902578373223530E+00, -0.2935185486823070E+00, & 0.2935185479087850E+00, 0.3482640466866250E+00, 0.8902578367074200E+00, & 0.3482640471787870E+00, 0.8902578362705020E+00, 0.2935185486500240E+00 & /), (/ 3, 50 /) ) x(1:3,101:150) = temp(1:3,1:50) temp(1:3,1:30) = reshape ( (/ & 0.2935185489325450E+00, -0.3482640443361840E+00, -0.8902578372893650E+00, & -0.3482640469012240E+00, 0.8902578366266271E+00, -0.2935185478992100E+00, & -0.2935185489462000E+00, -0.3482640470802280E+00, 0.8902578362114080E+00, & -0.3482640437865890E+00, -0.8902578381927660E+00, 0.2935185468445850E+00, & -0.8902578363572190E+00, 0.2935185486920580E+00, -0.3482640469216880E+00, & 0.8902578371864430E+00, -0.2935185488110970E+00, -0.3482640447016380E+00, & 0.6619719465221540E+00, 0.3138965556450800E-01, 0.7488710379906620E+00, & 0.3138965429721000E-01, 0.7488710401727520E+00, 0.6619719441137080E+00, & -0.6619719441960080E+00, -0.3138965411214200E-01, 0.7488710401077590E+00, & 0.7488710391643290E+00, 0.6619719452186930E+00, 0.3138965505254900E-01, & -0.3138965576897200E-01, 0.7488710377831830E+00, -0.6619719467471750E+00, & 0.7488710374229330E+00, -0.6619719471714430E+00, -0.3138965541621500E-01, & -0.3138965502676800E-01, -0.7488710390441610E+00, 0.6619719453558580E+00, & -0.7488710377677350E+00, -0.6619719467611250E+00, 0.3138965584333200E-01, & 0.3138965553856000E-01, -0.7488710372221780E+00, -0.6619719473927510E+00, & -0.7488710402389310E+00, 0.6619719440450870E+00, -0.3138965416549700E-01, & 0.6619719470714800E+00, -0.3138965522335800E-01, -0.7488710375193790E+00, & -0.6619719455513510E+00, 0.3138965496147900E-01, -0.7488710388740900E+00, & -0.1257325468629560E+00, -0.8776970906645390E+00, -0.4624274469561240E+00, & -0.8776970918317050E+00, -0.4624274453820790E+00, -0.1257325445044810E+00, & 0.1257325444036380E+00, 0.8776970919764240E+00, -0.4624274451348200E+00, & -0.4624274461677560E+00, -0.1257325478951010E+00, -0.8776970909320440E+00, & 0.8776970907904780E+00, -0.4624274466873070E+00, 0.1257325469724930E+00, & -0.4624274432329320E+00, 0.1257325471315280E+00, 0.8776970925876830E+00, & 0.8776970911119200E+00, 0.4624274458629050E+00, -0.1257325477606500E+00, & 0.4624274466781810E+00, 0.1257325473667960E+00, -0.8776970907388010E+00, & -0.8776970925085100E+00, 0.4624274433572250E+00, 0.1257325472270750E+00, & 0.4624274449492740E+00, -0.1257325447342650E+00, 0.8776970920268180E+00, & -0.1257325468959420E+00, 0.8776970926167950E+00, 0.4624274432417320E+00, & 0.1257325478895730E+00, -0.8776970910219350E+00, 0.4624274459986440E+00 & /), (/ 3, 30 /) ) x(1:3,151:180) = temp(1:3,1:30) return end subroutine design_19_204_3d ( x ) ! !******************************************************************************* ! !! DESIGN_19_204_3D returns a 19-design of 204 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,204), the coordinates of the points. ! implicit none ! real x(3,204) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & 0.5530359455875240E+00, -0.4720502222559440E+00, 0.6865273705805380E+00, & -0.4720502274596730E+00, 0.6865273657666380E+00, 0.5530359471216960E+00, & -0.5530359455874700E+00, 0.4720502225054740E+00, 0.6865273704090060E+00, & 0.6865273723664030E+00, 0.5530359415017250E+00, -0.4720502244454320E+00, & 0.4720502285674120E+00, 0.6865273648053050E+00, -0.5530359473695520E+00, & 0.6865273720316900E+00, -0.5530359415181640E+00, 0.4720502249129640E+00, & 0.4720502283409270E+00, -0.6865273652682360E+00, 0.5530359469881980E+00, & -0.6865273717321450E+00, -0.5530359429652730E+00, -0.4720502236532300E+00, & -0.4720502275804660E+00, -0.6865273656085270E+00, -0.5530359472148680E+00, & -0.6865273710216550E+00, 0.5530359429830480E+00, 0.4720502246657080E+00, & 0.5530359466448860E+00, 0.4720502216916090E+00, -0.6865273701168060E+00, & -0.5530359472128320E+00, -0.4720502224652870E+00, -0.6865273691273200E+00, & 0.5341516544244360E+00, 0.7920823931523260E+00, 0.2954445676158600E+00, & 0.7920823974890390E+00, 0.2954445683760440E+00, 0.5341516475731480E+00, & -0.5341516546059200E+00, -0.7920823927601730E+00, 0.2954445683390990E+00, & 0.2954445679493510E+00, 0.5341516453418870E+00, 0.7920823991528760E+00, & -0.7920823976007660E+00, 0.2954445692975700E+00, -0.5341516468977650E+00, & 0.2954445678295920E+00, -0.5341516453644880E+00, -0.7920823991823051E+00, & -0.7920823978659109E+00, -0.2954445679335430E+00, 0.5341516472590450E+00, & -0.2954445679620420E+00, -0.5341516456003500E+00, 0.7920823989738450E+00, & 0.7920823971287770E+00, -0.2954445690843200E+00, -0.5341516477156180E+00, & -0.2954445674894440E+00, 0.5341516447626100E+00, -0.7920823997150640E+00, & 0.5341516544647930E+00, -0.7920823931259270E+00, -0.2954445676136700E+00, & -0.5341516544608670E+00, 0.7920823927136630E+00, -0.2954445687260430E+00, & -0.9877839019893629E+00, -0.8366313346394001E-02, -0.1556051662756040E+00, & -0.8366316491905000E-02, -0.1556051662541940E+00, -0.9877839019660940E+00, & 0.9877839020420180E+00, 0.8366312354304999E-02, -0.1556051659946880E+00, & -0.1556051675072520E+00, -0.9877839018153201E+00, -0.8366310987655000E-02, & 0.8366315777747000E-02, -0.1556051667664770E+00, 0.9877839018914431E+00, & -0.1556051684243930E+00, 0.9877839016674920E+00, 0.8366311383277999E-02, & 0.8366317026602000E-02, 0.1556051667060530E+00, -0.9877839018903840E+00, & 0.1556051668358580E+00, 0.9877839019198360E+00, -0.8366311135093001E-02, & -0.8366315838957000E-02, 0.1556051656859480E+00, 0.9877839020611400E+00, & 0.1556051677615080E+00, -0.9877839017739820E+00, 0.8366311139443000E-02, & -0.9877839021131400E+00, 0.8366313179595001E-02, 0.1556051654988360E+00, & 0.9877839021656430E+00, -0.8366312162939000E-02, 0.1556051652202080E+00, & 0.9507649813879450E+00, 0.2027274941124910E+00, -0.2344088592550430E+00, & 0.2027274967899960E+00, -0.2344088607327570E+00, 0.9507649804527050E+00, & -0.9507649809862370E+00, -0.2027274948474850E+00, -0.2344088602487210E+00, & -0.2344088502156700E+00, 0.9507649832330110E+00, 0.2027274959113820E+00, & -0.2027274972989600E+00, -0.2344088615925410E+00, -0.9507649801322030E+00, & -0.2344088501157700E+00, -0.9507649833228990E+00, -0.2027274956053300E+00, & -0.2027274967590510E+00, 0.2344088604914850E+00, 0.9507649805187890E+00, & 0.2344088505693270E+00, -0.9507649832537470E+00, 0.2027274954052100E+00, & 0.2027274975652030E+00, 0.2344088616793760E+00, -0.9507649800540250E+00, & 0.2344088503414610E+00, 0.9507649833052240E+00, -0.2027274954272670E+00, & 0.9507649813805390E+00, -0.2027274936956060E+00, 0.2344088596456210E+00, & -0.9507649809706660E+00, 0.2027274944264320E+00, 0.2344088606760230E+00, & 0.5120729891159830E+00, -0.1240516071700760E+00, -0.8499367344551850E+00, & -0.1240516096533600E+00, -0.8499367347162670E+00, 0.5120729880810549E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.5120729889353700E+00, 0.1240516066744210E+00, -0.8499367346363440E+00, & -0.8499367347256450E+00, 0.5120729893519020E+00, -0.1240516043431770E+00, & 0.1240516097069470E+00, -0.8499367344192840E+00, -0.5120729885610040E+00, & -0.8499367341856190E+00, -0.5120729901339510E+00, 0.1240516048149250E+00, & 0.1240516099052720E+00, 0.8499367341592090E+00, 0.5120729889446310E+00, & 0.8499367344868650E+00, -0.5120729897186670E+00, -0.1240516044651950E+00, & -0.1240516097769130E+00, 0.8499367349119090E+00, -0.5120729877263990E+00, & 0.8499367338659730E+00, 0.5120729907276490E+00, 0.1240516045542460E+00, & 0.5120729896570440E+00, 0.1240516068374590E+00, 0.8499367341777510E+00, & -0.5120729893965740E+00, -0.1240516069700320E+00, 0.8499367343153300E+00, & 0.3918836979149760E+00, 0.8504231947935850E+00, -0.3510093404249470E+00, & 0.8504231953303970E+00, -0.3510093359232440E+00, 0.3918837007822100E+00, & -0.3918836974663060E+00, -0.8504231950076681E+00, -0.3510093404071850E+00, & -0.3510093358722430E+00, 0.3918837053260610E+00, 0.8504231932575950E+00, & -0.8504231945931280E+00, -0.3510093374446540E+00, -0.3918837010194270E+00, & -0.3510093379994500E+00, -0.3918837052641880E+00, -0.8504231924081080E+00, & -0.8504231944686730E+00, 0.3510093377603370E+00, 0.3918837010067490E+00, & 0.3510093355274980E+00, -0.3918837058668520E+00, 0.8504231931506850E+00, & 0.8504231953614160E+00, 0.3510093361703770E+00, -0.3918837004935390E+00, & 0.3510093368734830E+00, 0.3918837061640700E+00, -0.8504231924581730E+00, & 0.3918836983231810E+00, -0.8504231947867780E+00, 0.3510093399857000E+00, & -0.3918836981670360E+00, 0.8504231948119020E+00, 0.3510093400991560E+00, & -0.6371433781201160E+00, -0.6284993741332821E+00, 0.4461354642165980E+00, & -0.6284993752049540E+00, 0.4461354680865760E+00, -0.6371433743531780E+00, & 0.6371433775770700E+00, 0.6284993748268231E+00, 0.4461354640151090E+00, & 0.4461354669911080E+00, -0.6371433738119600E+00, -0.6284993765312260E+00, & 0.6284993759118970E+00, 0.4461354682922670E+00, 0.6371433735117989E+00, & 0.4461354673116640E+00, 0.6371433734809540E+00, 0.6284993766392390E+00, & 0.6284993752708899E+00, -0.4461354686663920E+00, -0.6371433738821430E+00, & -0.4461354670064370E+00, 0.6371433732864240E+00, -0.6284993770531080E+00, & -0.6284993761951470E+00, -0.4461354678872510E+00, 0.6371433735159890E+00, & -0.4461354676330940E+00, -0.6371433733821350E+00, 0.6284993765112530E+00, & -0.6371433778168560E+00, 0.6284993739350579E+00, -0.4461354649289460E+00, & 0.6371433775429560E+00, -0.6284993747841900E+00, -0.4461354641238870E+00, & -0.4203787081845960E+00, 0.9035659576472320E+00, -0.8276655052671900E-01, & 0.9035659605471290E+00, -0.8276654807481700E-01, -0.4203787024342720E+00, & 0.4203787076875200E+00, -0.9035659579043220E+00, -0.8276655024474300E-01, & -0.8276654593922000E-01, -0.4203787012835850E+00, 0.9035659612781000E+00, & -0.9035659607605540E+00, -0.8276654714625301E-01, 0.4203787021583580E+00, & -0.8276654503910599E-01, 0.4203787012540780E+00, -0.9035659613742790E+00, & -0.9035659605096850E+00, 0.8276654772283600E-01, -0.4203787025840560E+00, & 0.8276654605224100E-01, 0.4203787004398820E+00, 0.9035659616602750E+00, & 0.9035659609093500E+00, 0.8276654786268300E-01, 0.4203787016974780E+00, & 0.8276654567939599E-01, -0.4203787012705280E+00, -0.9035659613079750E+00, & -0.4203787075055050E+00, -0.9035659579454950E+00, 0.8276655071972200E-01, & 0.4203787069560330E+00, 0.9035659582334380E+00, 0.8276655036706200E-01, & 0.4918482984737960E+00, 0.3553670079722870E+00, 0.7948581891968250E+00, & 0.3553670126265960E+00, 0.7948581877088960E+00, 0.4918482975155830E+00, & -0.4918482983446310E+00, -0.3553670081567440E+00, 0.7948581891942840E+00, & 0.7948581920629110E+00, 0.4918482946262250E+00, 0.3553670068869010E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.3553670125488890E+00, 0.7948581876341591E+00, -0.4918482976925080E+00, & 0.7948581920911830E+00, -0.4918482946181820E+00, -0.3553670068347960E+00, & -0.3553670126054030E+00, -0.7948581876190900E+00, 0.4918482976760280E+00, & -0.7948581926084100E+00, -0.4918482939269670E+00, 0.3553670066345830E+00, & 0.3553670125079900E+00, -0.7948581879865350E+00, -0.4918482971525960E+00, & -0.7948581923580540E+00, 0.4918482945785170E+00, -0.3553670062927780E+00, & 0.4918482979798090E+00, -0.3553670078685580E+00, -0.7948581895488740E+00, & -0.4918482975718080E+00, 0.3553670074172150E+00, -0.7948581900031270E+00, & 0.6066725580591500E-01, 0.9779826388870601E+00, 0.1996733385018680E+00, & 0.9779826388105760E+00, 0.1996733414823130E+00, 0.6066724722937100E-01, & -0.6066725576913000E-01, -0.9779826389361820E+00, 0.1996733382724510E+00, & 0.1996733379093700E+00, 0.6066725097601800E-01, 0.9779826393076430E+00, & -0.9779826390721680E+00, 0.1996733402420810E+00, -0.6066724709436200E-01, & 0.1996733373731380E+00, -0.6066725108681100E-01, -0.9779826394102520E+00, & -0.9779826389789210E+00, -0.1996733407028710E+00, 0.6066724708094300E-01, & -0.1996733379900360E+00, -0.6066725130688600E-01, 0.9779826392706490E+00, & 0.9779826388978650E+00, -0.1996733410525940E+00, -0.6066724723656200E-01, & -0.1996733370842010E+00, 0.6066725078957500E-01, -0.9779826394876820E+00, & 0.6066725570001000E-01, -0.9779826388984560E+00, -0.1996733384782320E+00, & -0.6066725607420900E-01, 0.9779826389619390E+00, -0.1996733380536040E+00, & -0.7083129618733460E+00, 0.7024145919905340E+00, 0.7004633467198600E-01, & 0.7024145841583940E+00, 0.7004632814692500E-01, -0.7083129702855400E+00, & 0.7083129618062400E+00, -0.7024145919500020E+00, 0.7004633575700700E-01, & 0.7004632573079300E-01, -0.7083129711293000E+00, 0.7024145835484910E+00, & -0.7024145842416020E+00, 0.7004632881992701E-01, 0.7083129701364700E+00, & 0.7004632513807500E-01, 0.7083129713932310E+00, -0.7024145833414500E+00, & -0.7024145843408820E+00, -0.7004632732975700E-01, -0.7083129701853820E+00, & -0.7004632609498600E-01, 0.7083129705424070E+00, 0.7024145841039930E+00, & 0.7024145841262820E+00, -0.7004632899964500E-01, 0.7083129702330579E+00, & -0.7004632593766000E-01, -0.7083129702923990E+00, -0.7024145843717901E+00, & -0.7083129612904699E+00, -0.7024145924889560E+00, -0.7004633556796400E-01, & 0.7083129610595130E+00, 0.7024145926403830E+00, -0.7004633638491400E-01, & -0.6087782464978910E+00, -0.7295294625447331E+00, -0.3117303480095350E+00, & -0.7295294611628020E+00, -0.3117303415315250E+00, -0.6087782514710520E+00, & 0.6087782466796730E+00, 0.7295294620234890E+00, -0.3117303488743800E+00, & -0.3117303430694020E+00, -0.6087782534161340E+00, -0.7295294588825280E+00, & 0.7295294609550670E+00, -0.3117303419927740E+00, 0.6087782514838040E+00, & -0.3117303424530460E+00, 0.6087782538377420E+00, 0.7295294587940750E+00, & 0.7295294612856030E+00, 0.3117303412869020E+00, -0.6087782514491540E+00, & 0.3117303426760670E+00, 0.6087782545845650E+00, -0.7295294580755680E+00, & -0.7295294607371670E+00, 0.3117303426257060E+00, 0.6087782514208260E+00, & 0.3117303425000450E+00, -0.6087782544496140E+00, 0.7295294582633970E+00, & -0.6087782472925320E+00, 0.7295294620208300E+00, 0.3117303476837500E+00, & 0.6087782473304520E+00, -0.7295294616178460E+00, 0.3117303485527810E+00, & 0.2301027741906510E+00, -0.8077565541706230E+00, 0.5427541455430510E+00, & -0.8077565520843450E+00, 0.5427541494247280E+00, 0.2301027723584630E+00, & -0.2301027736836010E+00, 0.8077565541973331E+00, 0.5427541457182660E+00, & 0.5427541442060190E+00, 0.2301027725135640E+00, -0.8077565555467580E+00, & 0.8077565521327510E+00, 0.5427541491807930E+00, -0.2301027727639210E+00, & 0.5427541438768900E+00, -0.2301027734329550E+00, 0.8077565555060050E+00 & /), (/ 3, 50 /) ) x(1:3,101:150) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.8077565522293090E+00, -0.5427541488826160E+00, 0.2301027731282830E+00, & -0.5427541450840050E+00, -0.2301027725000650E+00, -0.8077565549606600E+00, & -0.8077565522377380E+00, -0.5427541493469090E+00, -0.2301027720035430E+00, & -0.5427541442887860E+00, 0.2301027732279550E+00, 0.8077565552876390E+00, & 0.2301027740976750E+00, 0.8077565540258960E+00, -0.5427541457978590E+00, & -0.2301027735623570E+00, -0.8077565537617610E+00, -0.5427541464179090E+00, & -0.4963838094741050E+00, -0.8625182307751310E+00, -0.9831284388376600E-01, & -0.8625182242873330E+00, -0.9831283897578499E-01, -0.4963838217193900E+00, & 0.4963838095962310E+00, 0.8625182306862210E+00, -0.9831284404717300E-01, & -0.9831283935004100E-01, -0.4963838230195620E+00, -0.8625182234964180E+00, & 0.8625182243002610E+00, -0.9831283833314700E-01, 0.4963838218242060E+00, & -0.9831283829978200E-01, 0.4963838230786360E+00, 0.8625182235821330E+00, & 0.8625182244705150E+00, 0.9831283852450599E-01, -0.4963838214904720E+00, & 0.9831283917121000E-01, 0.4963838243140410E+00, -0.8625182227718220E+00, & -0.8625182240785880E+00, 0.9831283937838700E-01, 0.4963838220023670E+00, & 0.9831283847005599E-01, -0.4963838238101500E+00, 0.8625182231417350E+00, & -0.4963838100694220E+00, 0.8625182304143790E+00, 0.9831284404294301E-01, & 0.4963838104038140E+00, -0.8625182302154630E+00, 0.9831284409972600E-01, & 0.2786925513279580E+00, 0.9193131884651310E+00, 0.2778375844776740E+00, & 0.9193131917449719E+00, 0.2778375815265590E+00, 0.2786925434509230E+00, & -0.2786925515665470E+00, -0.9193131884136300E+00, 0.2778375844087580E+00, & 0.2778375830510050E+00, 0.2786925449083510E+00, 0.9193131908424260E+00, & -0.9193131921803260E+00, 0.2778375803459510E+00, -0.2786925431918220E+00, & 0.2778375820085320E+00, -0.2786925450460710E+00, -0.9193131911157350E+00, & -0.9193131921965040E+00, -0.2778375802556450E+00, 0.2786925432284890E+00, & -0.2778375828255750E+00, -0.2786925452655750E+00, 0.9193131908022630E+00, & 0.9193131918140520E+00, -0.2778375810866550E+00, -0.2786925436616070E+00, & -0.2778375815286020E+00, 0.2786925445358110E+00, -0.9193131914154680E+00, & 0.2786925512993890E+00, -0.9193131886048900E+00, -0.2778375840438940E+00, & -0.2786925517195550E+00, 0.9193131885016330E+00, -0.2778375839640920E+00, & 0.7117238189820730E+00, -0.1473551783591070E+00, -0.6868301514234280E+00, & -0.1473551800456200E+00, -0.6868301516966510E+00, 0.7117238183692320E+00, & -0.7117238189949870E+00, 0.1473551790836350E+00, -0.6868301512546030E+00, & -0.6868301560317550E+00, 0.7117238162213120E+00, -0.1473551702138960E+00, & 0.1473551798781810E+00, -0.6868301515087299E+00, -0.7117238185852460E+00, & -0.6868301558996560E+00, -0.7117238164804049E+00, 0.1473551695782020E+00, & 0.1473551798320490E+00, 0.6868301511512620E+00, 0.7117238189397620E+00, & 0.6868301563077071E+00, -0.7117238161174280E+00, -0.1473551694294310E+00, & -0.1473551804107280E+00, 0.6868301515960830E+00, -0.7117238183906890E+00, & 0.6868301558133360E+00, 0.7117238166677690E+00, 0.1473551690755790E+00, & 0.7117238191679540E+00, 0.1473551778536360E+00, 0.6868301513392560E+00, & -0.7117238189582320E+00, -0.1473551779327430E+00, 0.6868301515396070E+00, & 0.9108668157709010E+00, -0.4075474740818870E+00, 0.6501307789093599E-01, & -0.4075474700550140E+00, 0.6501307469253000E-01, 0.9108668178009230E+00, & -0.9108668160296600E+00, 0.4075474735167600E+00, 0.6501307780819900E-01, & 0.6501307141712299E-01, 0.9108668172437731E+00, -0.4075474718227450E+00, & 0.4075474695472240E+00, 0.6501307442432699E-01, -0.9108668180472660E+00, & 0.6501307150394400E-01, -0.9108668171938550E+00, 0.4075474719204620E+00, & 0.4075474699947020E+00, -0.6501307473049800E-01, 0.9108668178251990E+00, & -0.6501307123716700E-01, -0.9108668170028290E+00, -0.4075474723899620E+00 & /), (/ 3, 50 /) ) x(1:3,151:200) = temp(1:3,1:50) temp(1:3,1:4) = reshape ( (/ & -0.4075474694929540E+00, -0.6501307476090901E-01, -0.9108668180475250E+00, & -0.6501307089406901E-01, 0.9108668170468960E+00, 0.4075474723462040E+00, & 0.9108668155710270E+00, 0.4075474746073930E+00, -0.6501307739703199E-01, & -0.9108668158269980E+00, -0.4075474740697620E+00, -0.6501307718099700E-01 & /), (/ 3, 4 /) ) x(1:3,201:204) = temp(1:3,1:4) return end subroutine design_20_216_3d ( x ) ! !******************************************************************************* ! !! DESIGN_20_216_3D returns a 20-design of 216 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,216), the coordinates of the points. ! implicit none ! real x(3,216) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & -0.2515812993559380E+00, 0.9657024628131560E+00, -0.6423085809004400E-01, & 0.9657024628129730E+00, -0.6423085809016300E-01, -0.2515812993566090E+00, & 0.2515812993562100E+00, -0.9657024628130760E+00, -0.6423085809018400E-01, & -0.6423085809003699E-01, -0.2515812993564690E+00, 0.9657024628130180E+00, & -0.9657024628129880E+00, -0.6423085809021201E-01, 0.2515812993565400E+00, & -0.6423085809028301E-01, 0.2515812993562130E+00, -0.9657024628130680E+00, & -0.9657024628131290E+00, 0.6423085809034999E-01, -0.2515812993559620E+00, & 0.6423085809020899E-01, 0.2515812993563220E+00, 0.9657024628130449E+00, & 0.9657024628130900E+00, 0.6423085808991100E-01, 0.2515812993562260E+00, & 0.6423085809020000E-01, -0.2515812993563000E+00, -0.9657024628130511E+00, & -0.2515812993566000E+00, -0.9657024628129920E+00, 0.6423085808991900E-01, & 0.2515812993565160E+00, 0.9657024628129810E+00, 0.6423085809040199E-01, & -0.7742655338457720E+00, 0.3815151823433970E+00, -0.5049346975005830E+00, & 0.3815151823431970E+00, -0.5049346975006570E+00, -0.7742655338458230E+00, & 0.7742655338455831E+00, -0.3815151823433860E+00, -0.5049346975008830E+00, & -0.5049346975007970E+00, -0.7742655338456810E+00, 0.3815151823433000E+00, & -0.3815151823431530E+00, -0.5049346975008050E+00, 0.7742655338457480E+00, & -0.5049346975006220E+00, 0.7742655338458870E+00, -0.3815151823431140E+00, & -0.3815151823432720E+00, 0.5049346975008830E+00, -0.7742655338456390E+00, & 0.5049346975008080E+00, 0.7742655338456150E+00, 0.3815151823434190E+00, & 0.3815151823434900E+00, 0.5049346975006210E+00, 0.7742655338457030E+00, & 0.5049346975005800E+00, -0.7742655338458060E+00, -0.3815151823433330E+00, & -0.7742655338457189E+00, -0.3815151823433210E+00, 0.5049346975007230E+00, & 0.7742655338458940E+00, 0.3815151823429800E+00, 0.5049346975007110E+00, & 0.6218920898658570E+00, 0.4517167996942610E+00, -0.6396891131137470E+00, & 0.4517167996941910E+00, -0.6396891131139180E+00, 0.6218920898657310E+00, & -0.6218920898656480E+00, -0.4517167996942250E+00, -0.6396891131139760E+00, & -0.6396891131139010E+00, 0.6218920898654990E+00, 0.4517167996945350E+00, & -0.4517167996940080E+00, -0.6396891131137999E+00, -0.6218920898659860E+00, & -0.6396891131138790E+00, -0.6218920898656550E+00, -0.4517167996943510E+00, & -0.4517167996943470E+00, 0.6396891131136750E+00, 0.6218920898658690E+00, & 0.6396891131137880E+00, -0.6218920898659950E+00, 0.4517167996940130E+00, & 0.4517167996945870E+00, 0.6396891131139550E+00, -0.6218920898654060E+00, & 0.6396891131140610E+00, 0.6218920898659001E+00, -0.4517167996937570E+00, & 0.6218920898658890E+00, -0.4517167996942810E+00, 0.6396891131137010E+00, & -0.6218920898658979E+00, 0.4517167996937130E+00, 0.6396891131140940E+00, & 0.2818110426750910E+00, 0.8580478476961970E+00, -0.4293441827838140E+00, & 0.8580478476964080E+00, -0.4293441827836590E+00, 0.2818110426746880E+00, & -0.2818110426751140E+00, -0.8580478476963060E+00, -0.4293441827835810E+00, & -0.4293441827833150E+00, 0.2818110426749470E+00, 0.8580478476964950E+00, & -0.8580478476963860E+00, -0.4293441827833290E+00, -0.2818110426752570E+00, & -0.4293441827839790E+00, -0.2818110426747930E+00, -0.8580478476962130E+00, & -0.8580478476961360E+00, 0.4293441827839480E+00, 0.2818110426750750E+00, & 0.4293441827835740E+00, -0.2818110426750020E+00, 0.8580478476963470E+00, & 0.8580478476964301E+00, 0.4293441827834320E+00, -0.2818110426749640E+00, & 0.4293441827834070E+00, 0.2818110426754000E+00, -0.8580478476963000E+00, & 0.2818110426747800E+00, -0.8580478476965150E+00, 0.4293441827833830E+00, & -0.2818110426751930E+00, 0.8580478476962270E+00, 0.4293441827836880E+00, & -0.6496120041073690E+00, -0.6153110840694710E+00, 0.4465383678261700E+00, & -0.6153110840695750E+00, 0.4465383678265440E+00, -0.6496120041070140E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.6496120041073380E+00, 0.6153110840692740E+00, 0.4465383678264870E+00, & 0.4465383678262900E+00, -0.6496120041072340E+00, -0.6153110840695259E+00, & 0.6153110840696310E+00, 0.4465383678261890E+00, 0.6496120041072050E+00, & 0.4465383678263000E+00, 0.6496120041072230E+00, 0.6153110840695309E+00, & 0.6153110840693370E+00, -0.4465383678262700E+00, -0.6496120041074280E+00, & -0.4465383678262480E+00, 0.6496120041073460E+00, -0.6153110840694390E+00, & -0.6153110840693730E+00, -0.4465383678265360E+00, 0.6496120041072110E+00, & -0.4465383678262860E+00, -0.6496120041073030E+00, 0.6153110840694570E+00, & -0.6496120041071211E+00, 0.6153110840697230E+00, -0.4465383678261830E+00, & 0.6496120041071251E+00, -0.6153110840695510E+00, -0.4465383678264150E+00, & 0.9933631163195030E+00, -0.1134687281482460E+00, -0.1882994605477500E-01, & -0.1134687281480350E+00, -0.1882994605463900E-01, 0.9933631163195290E+00, & -0.9933631163195230E+00, 0.1134687281482040E+00, -0.1882994605396400E-01, & -0.1882994605390300E-01, 0.9933631163195540E+00, -0.1134687281479430E+00, & 0.1134687281480660E+00, -0.1882994605432300E-01, -0.9933631163195320E+00, & -0.1882994605474300E-01, -0.9933631163195330E+00, 0.1134687281479860E+00, & 0.1134687281482190E+00, 0.1882994605448500E-01, 0.9933631163195110E+00, & 0.1882994605434400E-01, -0.9933631163195100E+00, -0.1134687281482540E+00, & -0.1134687281481780E+00, 0.1882994605424600E-01, -0.9933631163195210E+00, & 0.1882994605448500E-01, 0.9933631163195030E+00, 0.1134687281482870E+00, & 0.9933631163195400E+00, 0.1134687281479850E+00, 0.1882994605438200E-01, & -0.9933631163195310E+00, -0.1134687281480370E+00, 0.1882994605454200E-01, & 0.2463988858915690E+00, -0.7208015696498040E+00, 0.6478677999575010E+00, & -0.7208015696493920E+00, 0.6478677999578860E+00, 0.2463988858917620E+00, & -0.2463988858916820E+00, 0.7208015696496320E+00, 0.6478677999576490E+00, & 0.6478677999574370E+00, 0.2463988858916630E+00, -0.7208015696498290E+00, & 0.7208015696498640E+00, 0.6478677999575770E+00, -0.2463988858911920E+00, & 0.6478677999576580E+00, -0.2463988858916790E+00, 0.7208015696496251E+00, & 0.7208015696496560E+00, -0.6478677999577340E+00, 0.2463988858913890E+00, & -0.6478677999579040E+00, -0.2463988858914330E+00, -0.7208015696494890E+00, & -0.7208015696498650E+00, -0.6478677999573730E+00, -0.2463988858917270E+00, & -0.6478677999574740E+00, 0.2463988858911660E+00, 0.7208015696499660E+00, & 0.2463988858917940E+00, 0.7208015696495070E+00, -0.6478677999577450E+00, & -0.2463988858914560E+00, -0.7208015696496660E+00, -0.6478677999576971E+00, & -0.7935442048021790E+00, -0.3876287734012690E+00, -0.4690751848651830E+00, & -0.3876287734013530E+00, -0.4690751848647940E+00, -0.7935442048023680E+00, & 0.7935442048021710E+00, 0.3876287734015360E+00, -0.4690751848649750E+00, & -0.4690751848650970E+00, -0.7935442048020340E+00, -0.3876287734016680E+00, & 0.3876287734016800E+00, -0.4690751848649880E+00, 0.7935442048020930E+00, & -0.4690751848651100E+00, 0.7935442048021040E+00, 0.3876287734015120E+00, & 0.3876287734014250E+00, 0.4690751848652980E+00, -0.7935442048020350E+00, & 0.4690751848650680E+00, 0.7935442048023370E+00, -0.3876287734010840E+00, & -0.3876287734014910E+00, 0.4690751848649310E+00, 0.7935442048022190E+00, & 0.4690751848647840E+00, -0.7935442048022960E+00, 0.3876287734015120E+00, & -0.7935442048022650E+00, 0.3876287734012240E+00, 0.4690751848650750E+00, & 0.7935442048021850E+00, -0.3876287734018230E+00, 0.4690751848647150E+00, & 0.1649450576530030E+00, -0.9583769097171539E+00, 0.2330382519605870E+00, & -0.9583769097169350E+00, 0.2330382519611260E+00, 0.1649450576535120E+00, & -0.1649450576532380E+00, 0.9583769097170010E+00, 0.2330382519610480E+00, & 0.2330382519606680E+00, 0.1649450576535040E+00, -0.9583769097170480E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.9583769097171020E+00, 0.2330382519605140E+00, -0.1649450576534090E+00, & 0.2330382519607420E+00, -0.1649450576532880E+00, 0.9583769097170670E+00, & 0.9583769097170990E+00, -0.2330382519608270E+00, 0.1649450576529820E+00, & -0.2330382519611220E+00, -0.1649450576532260E+00, -0.9583769097169860E+00, & -0.9583769097170930E+00, -0.2330382519606320E+00, -0.1649450576532930E+00, & -0.2330382519604340E+00, 0.1649450576532610E+00, 0.9583769097171470E+00, & 0.1649450576534940E+00, 0.9583769097169650E+00, -0.2330382519610150E+00, & -0.1649450576534580E+00, -0.9583769097170310E+00, -0.2330382519607690E+00, & 0.5604842504669760E+00, 0.8132526494836950E+00, -0.1564529740408340E+00, & 0.8132526494836900E+00, -0.1564529740414460E+00, 0.5604842504668130E+00, & -0.5604842504672400E+00, -0.8132526494834310E+00, -0.1564529740412630E+00, & -0.1564529740410300E+00, 0.5604842504670470E+00, 0.8132526494836090E+00, & -0.8132526494838200E+00, -0.1564529740407260E+00, -0.5604842504668260E+00, & -0.1564529740410970E+00, -0.5604842504667780E+00, -0.8132526494837810E+00, & -0.8132526494836300E+00, 0.1564529740409670E+00, 0.5604842504670350E+00, & 0.1564529740412850E+00, -0.5604842504670530E+00, 0.8132526494835550E+00, & 0.8132526494834810E+00, 0.1564529740411510E+00, -0.5604842504671990E+00, & 0.1564529740408810E+00, 0.5604842504669960E+00, -0.8132526494836720E+00, & 0.5604842504668360E+00, -0.8132526494837370E+00, 0.1564529740411220E+00, & -0.5604842504667400E+00, 0.8132526494838230E+00, 0.1564529740410180E+00, & 0.3666300586513120E+00, 0.9220188325509330E+00, -0.1243530157042820E+00, & 0.9220188325508800E+00, -0.1243530157047620E+00, 0.3666300586512840E+00, & -0.3666300586517610E+00, -0.9220188325507080E+00, -0.1243530157046290E+00, & -0.1243530157043770E+00, 0.3666300586515770E+00, 0.9220188325508150E+00, & -0.9220188325509330E+00, -0.1243530157042030E+00, -0.3666300586513410E+00, & -0.1243530157045340E+00, -0.3666300586511110E+00, -0.9220188325509791E+00, & -0.9220188325508830E+00, 0.1243530157044780E+00, 0.3666300586513720E+00, & 0.1243530157046300E+00, -0.3666300586515370E+00, 0.9220188325507970E+00, & 0.9220188325507450E+00, 0.1243530157044630E+00, -0.3666300586517230E+00, & 0.1243530157042990E+00, 0.3666300586515630E+00, -0.9220188325508309E+00, & 0.3666300586512860E+00, -0.9220188325509230E+00, 0.1243530157044380E+00, & -0.3666300586512290E+00, 0.9220188325509380E+00, 0.1243530157044920E+00, & -0.8046719536517351E+00, -0.7083625075572700E-01, 0.5894788143650050E+00, & -0.7083625075605800E-01, 0.5894788143650030E+00, -0.8046719536517070E+00, & 0.8046719536519210E+00, 0.7083625075538300E-01, 0.5894788143647920E+00, & 0.5894788143647260E+00, -0.8046719536519410E+00, -0.7083625075571399E-01, & 0.7083625075593900E-01, 0.5894788143647760E+00, 0.8046719536518840E+00, & 0.5894788143650180E+00, 0.8046719536517150E+00, 0.7083625075584600E-01, & 0.7083625075560100E-01, -0.5894788143648110E+00, -0.8046719536518880E+00, & -0.5894788143647840E+00, 0.8046719536518840E+00, -0.7083625075587500E-01, & -0.7083625075555100E-01, -0.5894788143649440E+00, 0.8046719536517950E+00, & -0.5894788143649780E+00, -0.8046719536517590E+00, 0.7083625075567000E-01, & -0.8046719536518360E+00, 0.7083625075619300E-01, -0.5894788143648110E+00, & 0.8046719536517311E+00, -0.7083625075576400E-01, -0.5894788143650060E+00, & -0.8305971377714630E+00, -0.4813562216367220E+00, 0.2800081831259090E+00, & -0.4813562216367630E+00, 0.2800081831263240E+00, -0.8305971377712990E+00, & 0.8305971377714670E+00, 0.4813562216366280E+00, 0.2800081831260560E+00, & 0.2800081831258640E+00, -0.8305971377713430E+00, -0.4813562216369560E+00, & 0.4813562216370750E+00, 0.2800081831258990E+00, 0.8305971377712620E+00, & 0.2800081831260040E+00, 0.8305971377713510E+00, 0.4813562216368590E+00 & /), (/ 3, 50 /) ) x(1:3,101:150) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & 0.4813562216366530E+00, -0.2800081831258590E+00, -0.8305971377715200E+00, & -0.2800081831260120E+00, 0.8305971377715200E+00, -0.4813562216365640E+00, & -0.4813562216367410E+00, -0.2800081831261120E+00, 0.8305971377713840E+00, & -0.2800081831260530E+00, -0.8305971377713141E+00, 0.4813562216368940E+00, & -0.8305971377713660E+00, 0.4813562216368400E+00, -0.2800081831259940E+00, & 0.8305971377711940E+00, -0.4813562216370290E+00, -0.2800081831261780E+00, & 0.6225761054046420E+00, 0.2744190843023600E-01, -0.7820779594393990E+00, & 0.2744190843027600E-01, -0.7820779594394310E+00, 0.6225761054046010E+00, & -0.6225761054049630E+00, -0.2744190843004500E-01, -0.7820779594391500E+00, & -0.7820779594391180E+00, 0.6225761054049880E+00, 0.2744190843039700E-01, & -0.2744190843020100E-01, -0.7820779594392960E+00, -0.6225761054047740E+00, & -0.7820779594394081E+00, -0.6225761054046280E+00, -0.2744190843028900E-01, & -0.2744190843023800E-01, 0.7820779594392210E+00, 0.6225761054048660E+00, & 0.7820779594392629E+00, -0.6225761054048200E+00, 0.2744190843008300E-01, & 0.2744190843041900E-01, 0.7820779594392691E+00, -0.6225761054047980E+00, & 0.7820779594394510E+00, 0.6225761054045910E+00, -0.2744190842992800E-01, & 0.6225761054047880E+00, -0.2744190843038000E-01, 0.7820779594392780E+00, & -0.6225761054045720E+00, 0.2744190842986800E-01, 0.7820779594394680E+00, & -0.9318695934738700E+00, 0.3187128632820320E+00, -0.1733238919982290E+00, & 0.3187128632819440E+00, -0.1733238919982580E+00, -0.9318695934738940E+00, & 0.9318695934737440E+00, -0.3187128632820510E+00, -0.1733238919988710E+00, & -0.1733238919988410E+00, -0.9318695934738360E+00, 0.3187128632817990E+00, & -0.3187128632819240E+00, -0.1733238919986170E+00, 0.9318695934738340E+00, & -0.1733238919982450E+00, 0.9318695934739750E+00, -0.3187128632817140E+00, & -0.3187128632819970E+00, 0.1733238919985150E+00, -0.9318695934738280E+00, & 0.1733238919985010E+00, 0.9318695934738011E+00, 0.3187128632820840E+00, & 0.3187128632820890E+00, 0.1733238919985390E+00, 0.9318695934737929E+00, & 0.1733238919984430E+00, -0.9318695934738240E+00, -0.3187128632820500E+00, & -0.9318695934738650E+00, -0.3187128632819280E+00, 0.1733238919984480E+00, & 0.9318695934738970E+00, 0.3187128632818020E+00, 0.1733238919985030E+00, & 0.8838481768527030E+00, 0.2014238044752130E+00, 0.4221858018276850E+00, & 0.2014238044757030E+00, 0.4221858018276610E+00, 0.8838481768526020E+00, & -0.8838481768525340E+00, -0.2014238044755540E+00, 0.4221858018278750E+00, & 0.4221858018279100E+00, 0.8838481768524840E+00, 0.2014238044757010E+00, & -0.2014238044754720E+00, 0.4221858018277440E+00, -0.8838481768526150E+00, & 0.4221858018276230E+00, -0.8838481768526470E+00, -0.2014238044755860E+00, & -0.2014238044753970E+00, -0.4221858018278330E+00, 0.8838481768525900E+00, & -0.4221858018279300E+00, -0.8838481768525230E+00, 0.2014238044754890E+00, & 0.2014238044754790E+00, -0.4221858018276820E+00, -0.8838481768526431E+00, & -0.4221858018275140E+00, 0.8838481768527690E+00, -0.2014238044752800E+00, & 0.8838481768524760E+00, -0.2014238044756140E+00, -0.4221858018279670E+00, & -0.8838481768527100E+00, 0.2014238044755630E+00, -0.4221858018275020E+00, & 0.2042750399564050E+00, 0.7187705698842261E+00, 0.6645604381236631E+00, & 0.7187705698843340E+00, 0.6645604381234740E+00, 0.2042750399566370E+00, & -0.2042750399562600E+00, -0.7187705698842650E+00, 0.6645604381236641E+00, & 0.6645604381238100E+00, 0.2042750399561560E+00, 0.7187705698841600E+00, & -0.7187705698843250E+00, 0.6645604381235790E+00, -0.2042750399563280E+00, & 0.6645604381234920E+00, -0.2042750399563730E+00, -0.7187705698843930E+00, & -0.7187705698843611E+00, -0.6645604381235540E+00, 0.2042750399562800E+00, & -0.6645604381235540E+00, -0.2042750399566620E+00, 0.7187705698842540E+00 & /), (/ 3, 50 /) ) x(1:3,151:200) = temp(1:3,1:50) temp(1:3,1:16) = reshape ( (/ & 0.7187705698840900E+00, -0.6645604381238021E+00, -0.2042750399564320E+00, & -0.6645604381235050E+00, 0.2042750399566820E+00, -0.7187705698842930E+00, & 0.2042750399563760E+00, -0.7187705698841650E+00, -0.6645604381237380E+00, & -0.2042750399563670E+00, 0.7187705698845380E+00, -0.6645604381233370E+00, & -0.8988479274720690E+00, 0.4377008233682800E+00, 0.2214480756061700E-01, & 0.4377008233679230E+00, 0.2214480756096300E-01, -0.8988479274722340E+00, & 0.8988479274721820E+00, -0.4377008233680650E+00, 0.2214480756027000E-01, & 0.2214480756031500E-01, -0.8988479274722930E+00, 0.4377008233678340E+00, & -0.4377008233677660E+00, 0.2214480756062300E-01, 0.8988479274723190E+00, & 0.2214480756055900E-01, 0.8988479274721600E+00, -0.4377008233680940E+00, & -0.4377008233682550E+00, -0.2214480756032700E-01, -0.8988479274720880E+00, & -0.2214480756066100E-01, 0.8988479274721030E+00, 0.4377008233682070E+00, & 0.4377008233680300E+00, -0.2214480756060700E-01, 0.8988479274721910E+00, & -0.2214480756073300E-01, -0.8988479274721950E+00, -0.4377008233680150E+00, & -0.8988479274722450E+00, -0.4377008233679080E+00, -0.2214480756079600E-01, & 0.8988479274723130E+00, 0.4377008233677780E+00, -0.2214480756063400E-01 & /), (/ 3, 16 /) ) x(1:3,201:216) = temp(1:3,1:16) return end subroutine design_21_240_3d ( x ) ! !******************************************************************************* ! !! DESIGN_21_240_3D returns a 21-design of 240 points in 3D. ! ! ! Discussion: ! ! The contortions necessary to get this routine to work arise because ! of the idiotic limit of 99 continuation statements, AND the ! inability of the RESHAPE command to deal with situations involving ! an array section. As far as I can tell, you must store the results ! of a RESHAPE command in an array that is exactly the dimensions ! given in the command. ! ! Reference: ! ! R H Hardin and N J A Sloane, ! McLaren's Improved Snub Cube and Other New Spherical Designs ! in Three Dimensions, ! Discrete and Computational Geometry, ! Volume 15, 1996, pages 429-441. ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real X(3,240), the coordinates of the points. ! implicit none ! real x(3,240) real temp(3,50) ! temp(1:3,1:50) = reshape ( (/ & 0.8926535357627230E+00, 0.4125340536573610E+00, -0.1816186104542530E+00, & 0.4125340534250320E+00, -0.1816186106417820E+00, 0.8926535358319380E+00, & -0.8926535358064071E+00, -0.4125340536278530E+00, -0.1816186103065750E+00, & -0.1816186106138490E+00, 0.8926535357404750E+00, 0.4125340536352400E+00, & -0.4125340534774350E+00, -0.1816186104226540E+00, -0.8926535358523040E+00, & -0.1816186104513840E+00, -0.8926535357628120E+00, -0.4125340536584320E+00, & -0.4125340533170900E+00, 0.1816186106118270E+00, 0.8926535358879180E+00, & 0.1816186104001360E+00, -0.8926535358123000E+00, 0.4125340535739110E+00, & 0.4125340533279960E+00, 0.1816186104204000E+00, -0.8926535359218249E+00, & 0.1816186105807890E+00, 0.8926535358109040E+00, -0.4125340534973990E+00, & 0.8926535358676440E+00, -0.4125340534725580E+00, 0.1816186103583390E+00, & -0.8926535358550640E+00, 0.4125340535351600E+00, 0.1816186102779710E+00, & -0.2920937425934330E+00, -0.2957670279931700E+00, 0.9095070701703470E+00, & -0.2957670280268870E+00, 0.9095070700892600E+00, -0.2920937428117760E+00, & 0.2920937424478640E+00, 0.2957670280397130E+00, 0.9095070702019620E+00, & 0.9095070701476120E+00, -0.2920937429267210E+00, -0.2957670277339340E+00, & 0.2957670281453960E+00, 0.9095070700844410E+00, 0.2920937427067830E+00, & 0.9095070701888540E+00, 0.2920937426892070E+00, 0.2957670278416750E+00, & 0.2957670279073110E+00, -0.9095070701484190E+00, -0.2920937427486510E+00, & -0.9095070701012210E+00, 0.2920937431592720E+00, -0.2957670276469270E+00, & -0.2957670278353330E+00, -0.9095070700472930E+00, 0.2920937431364140E+00, & -0.9095070702185910E+00, -0.2920937427217760E+00, 0.2957670277180690E+00, & -0.2920937425408960E+00, 0.2957670277931470E+00, -0.9095070702522660E+00, & 0.2920937428619380E+00, -0.2957670277476140E+00, -0.9095070701639690E+00, & -0.5752257180381920E+00, 0.2412057282507800E-01, 0.8176390225974030E+00, & 0.2412057278614400E-01, 0.8176390225112380E+00, -0.5752257181623009E+00, & 0.5752257181164780E+00, -0.2412057297921300E-01, 0.8176390225377810E+00, & 0.8176390225560030E+00, -0.5752257181034800E+00, 0.2412057267146900E-01, & -0.2412057304150300E-01, 0.8176390224407570E+00, 0.5752257182517770E+00, & 0.8176390224583791E+00, 0.5752257182291181E+00, -0.2412057298452600E-01, & -0.2412057281823900E-01, -0.8176390225812600E+00, -0.5752257180614240E+00, & -0.8176390225435780E+00, 0.5752257181238820E+00, 0.2412057260611100E-01, & 0.2412057271295000E-01, -0.8176390225272960E+00, 0.5752257181425460E+00, & -0.8176390226004950E+00, -0.5752257180351740E+00, -0.2412057279222800E-01, & -0.5752257179254689E+00, -0.2412057271105200E-01, -0.8176390226800700E+00, & 0.5752257179082300E+00, 0.2412057259415500E-01, -0.8176390226956460E+00, & -0.1288331617248000E+00, 0.5224764072024000E-01, 0.9902889479738530E+00, & 0.5224764069440900E-01, 0.9902889479588950E+00, -0.1288331618502510E+00, & 0.1288331618403250E+00, -0.5224764032003800E-01, 0.9902889479799381E+00, & 0.9902889479497170E+00, -0.1288331619247960E+00, 0.5224764068455800E-01, & -0.5224764038851000E-01, 0.9902889479675810E+00, 0.1288331619075380E+00, & 0.9902889479777300E+00, 0.1288331618780010E+00, -0.5224764026899200E-01, & -0.5224764039040900E-01, -0.9902889479621900E+00, -0.1288331619482090E+00, & -0.9902889479606261E+00, 0.1288331618966490E+00, 0.5224764054718700E-01, & 0.5224764052780800E-01, -0.9902889479532510E+00, 0.1288331619612000E+00, & -0.9902889479708680E+00, -0.1288331619362050E+00, -0.5224764025552600E-01, & -0.1288331617904780E+00, -0.5224764033764300E-01, -0.9902889479854941E+00, & 0.1288331618574160E+00, 0.5224764055154500E-01, -0.9902889479655000E+00, & 0.7180063860347500E+00, 0.6574468762559930E+00, -0.2285397875962860E+00, & 0.6574468762867370E+00, -0.2285397878319220E+00, 0.7180063859315960E+00 & /), (/ 3, 50 /) ) x(1:3,1:50) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.7180063861094420E+00, -0.6574468761714340E+00, -0.2285397876048770E+00, & -0.2285397877372190E+00, 0.7180063859474221E+00, 0.6574468763023740E+00, & -0.6574468762410210E+00, -0.2285397877138000E+00, -0.7180063860110540E+00, & -0.2285397876789970E+00, -0.7180063860313590E+00, -0.6574468762309450E+00, & -0.6574468763611850E+00, 0.2285397878605490E+00, 0.7180063858543150E+00, & 0.2285397877030650E+00, -0.7180063858573850E+00, 0.6574468764125770E+00, & 0.6574468763044540E+00, 0.2285397878740170E+00, -0.7180063859019750E+00, & 0.2285397877849670E+00, 0.7180063858138530E+00, -0.6574468764316480E+00, & 0.7180063858807600E+00, -0.6574468763634850E+00, 0.2285397877708510E+00, & -0.7180063858910180E+00, 0.6574468763715580E+00, 0.2285397877154010E+00, & 0.8631764731178030E+00, 0.4681818166531380E+00, 0.1890295289400010E+00, & 0.4681818164384860E+00, 0.1890295291974920E+00, 0.8631764731778400E+00, & -0.8631764731944460E+00, -0.4681818165764200E+00, 0.1890295287800330E+00, & 0.1890295291255270E+00, 0.8631764730643890E+00, 0.4681818166767080E+00, & -0.4681818163926710E+00, 0.1890295288974430E+00, -0.8631764732683980E+00, & 0.1890295287921740E+00, -0.8631764731436880E+00, -0.4681818166651000E+00, & -0.4681818164112130E+00, -0.1890295291281380E+00, 0.8631764732078210E+00, & -0.1890295288978520E+00, -0.8631764730897200E+00, 0.4681818167219310E+00, & 0.4681818165088670E+00, -0.1890295289305550E+00, -0.8631764731981230E+00, & -0.1890295290018230E+00, 0.8631764731066590E+00, -0.4681818166487220E+00, & 0.8631764731352290E+00, -0.4681818166486420E+00, -0.1890295288715610E+00, & -0.8631764731233340E+00, 0.4681818166987620E+00, -0.1890295288017440E+00, & 0.7726328568471330E+00, -0.5170594506955900E+00, 0.3683585114621520E+00, & -0.5170594505671320E+00, 0.3683585115855150E+00, 0.7726328568742860E+00, & -0.7726328568060810E+00, 0.5170594506473910E+00, 0.3683585116159150E+00, & 0.3683585116480010E+00, 0.7726328568060540E+00, -0.5170594506245730E+00, & 0.5170594504940070E+00, 0.3683585118165880E+00, -0.7726328568130560E+00, & 0.3683585117204960E+00, -0.7726328568024760E+00, 0.5170594505782730E+00, & 0.5170594505834450E+00, -0.3683585114871170E+00, 0.7726328569102801E+00, & -0.3683585115673300E+00, -0.7726328568594670E+00, -0.5170594506022290E+00, & -0.5170594505023690E+00, -0.3683585116659560E+00, -0.7726328568792750E+00, & -0.3683585114698030E+00, 0.7726328568556510E+00, 0.5170594506774120E+00, & 0.7726328569347490E+00, 0.5170594506919191E+00, -0.3683585112835310E+00, & -0.7726328569274850E+00, -0.5170594506337780E+00, -0.3683585113803780E+00, & -0.8478192319146480E+00, -0.6632577590016700E-01, -0.5261211281130020E+00, & -0.6632577591363099E-01, -0.5261211282576860E+00, -0.8478192318238090E+00, & 0.8478192318830180E+00, 0.6632577581985200E-01, -0.5261211281740970E+00, & -0.5261211283487620E+00, -0.8478192317669569E+00, -0.6632577591791000E-01, & 0.6632577584612000E-01, -0.5261211284070980E+00, 0.8478192317363720E+00, & -0.5261211284592400E+00, 0.8478192317090800E+00, 0.6632577578136600E-01, & 0.6632577594578500E-01, 0.5261211283443800E+00, -0.8478192317674960E+00, & 0.5261211284495320E+00, 0.8478192317006920E+00, -0.6632577596561300E-01, & -0.6632577587721100E-01, 0.5261211283063880E+00, 0.8478192317964360E+00, & 0.5261211285046690E+00, -0.8478192316652130E+00, 0.6632577598176000E-01, & -0.8478192318217250E+00, 0.6632577594100500E-01, 0.5261211282575941E+00, & 0.8478192318502640E+00, -0.6632577599665500E-01, 0.5261211282045900E+00, & 0.9805743229230000E-02, 0.9429838158425931E+00, 0.3326941094438920E+00, & 0.9429838158089230E+00, 0.3326941095397480E+00, 0.9805743214949999E-02, & -0.9805743379690000E-02, -0.9429838157872910E+00, 0.3326941095962070E+00, & 0.3326941092265540E+00, 0.9805743204272001E-02, 0.9429838159195320E+00 & /), (/ 3, 50 /) ) x(1:3,51:100) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.9429838157740400E+00, 0.3326941096356470E+00, -0.9805743315804000E-02, & 0.3326941093979960E+00, -0.9805743298910000E-02, -0.9429838158580620E+00, & -0.9429838157761140E+00, -0.3326941096300980E+00, 0.9805743304667000E-02, & -0.3326941093190270E+00, -0.9805743188507000E-02, 0.9429838158870700E+00, & 0.9429838157750819E+00, -0.3326941096351990E+00, -0.9805743230762999E-02, & -0.3326941094557650E+00, 0.9805743389761999E-02, -0.9429838158367350E+00, & 0.9805743301140001E-02, -0.9429838157525240E+00, -0.3326941096970650E+00, & -0.9805743287713000E-02, 0.9429838157913790E+00, -0.3326941095873310E+00, & 0.7855992483711520E+00, -0.4051569453122690E+00, -0.4676341204658960E+00, & -0.4051569449321250E+00, -0.4676341206498590E+00, 0.7855992484576980E+00, & -0.7855992482017899E+00, 0.4051569454340510E+00, -0.4676341206449040E+00, & -0.4676341206112420E+00, 0.7855992483346230E+00, -0.4051569452153390E+00, & 0.4051569451364230E+00, -0.4676341208682010E+00, -0.7855992482223660E+00, & -0.4676341208118040E+00, -0.7855992481456090E+00, 0.4051569453503470E+00, & 0.4051569448419850E+00, 0.4676341208613320E+00, 0.7855992483783050E+00, & 0.4676341207867260E+00, -0.7855992482498571E+00, -0.4051569451771560E+00, & -0.4051569449996430E+00, 0.4676341208710980E+00, -0.7855992482911820E+00, & 0.4676341208937130E+00, 0.7855992482342400E+00, 0.4051569450839530E+00, & 0.7855992483133410E+00, 0.4051569451171040E+00, 0.4676341207321060E+00, & -0.7855992482810999E+00, -0.4051569451973700E+00, 0.4676341207167270E+00, & -0.7373319991314921E+00, 0.6208515010137640E+00, -0.2662422519918900E+00, & 0.6208515009491860E+00, -0.2662422521548950E+00, -0.7373319991270100E+00, & 0.7373319990600610E+00, -0.6208515010887370E+00, -0.2662422520148830E+00, & -0.2662422519486310E+00, -0.7373319991032550E+00, 0.6208515010658500E+00, & -0.6208515010792210E+00, -0.2662422522338000E+00, 0.7373319989890250E+00, & -0.2662422520116240E+00, 0.7373319989962220E+00, -0.6208515011659510E+00, & -0.6208515010721239E+00, 0.2662422522225600E+00, -0.7373319989990600E+00, & 0.2662422521138640E+00, 0.7373319988329740E+00, 0.6208515013159830E+00, & 0.6208515011873870E+00, 0.2662422523283740E+00, 0.7373319988637970E+00, & 0.2662422519322500E+00, -0.7373319989389900E+00, -0.6208515012679590E+00, & -0.7373319989479430E+00, -0.6208515011832970E+00, 0.2662422521048790E+00, & 0.7373319988350070E+00, 0.6208515013057860E+00, 0.2662422521320100E+00, & 0.7268714691656590E+00, -0.2748828235042800E-01, -0.6862231864680610E+00, & -0.2748828218275500E-01, -0.6862231864483250E+00, 0.7268714691906329E+00, & -0.7268714691729310E+00, 0.2748828237188500E-01, -0.6862231864594990E+00, & -0.6862231864497120E+00, 0.7268714691854060E+00, -0.2748828228634100E-01, & 0.2748828235160700E-01, -0.6862231864911200E+00, -0.7268714691438450E+00, & -0.6862231865456220E+00, -0.7268714690897941E+00, 0.2748828242028100E-01, & 0.2748828226683600E-01, 0.6862231864703350E+00, 0.7268714691666740E+00, & 0.6862231866611830E+00, -0.7268714689834220E+00, -0.2748828234818500E-01, & -0.2748828225102900E-01, 0.6862231865230920E+00, -0.7268714691174650E+00, & 0.6862231866091120E+00, 0.7268714690334980E+00, 0.2748828232394800E-01, & 0.7268714690701070E+00, 0.2748828233555000E-01, 0.6862231865698690E+00, & -0.7268714690801830E+00, -0.2748828230971600E-01, 0.6862231865602320E+00, & 0.6653633857205150E+00, 0.5808602677392710E+00, 0.4689274083527160E+00, & 0.5808602675770870E+00, 0.4689274084886380E+00, 0.6653633857663080E+00, & -0.6653633856773800E+00, -0.5808602677195750E+00, 0.4689274084383180E+00, & 0.4689274083407830E+00, 0.6653633858218631E+00, 0.5808602676328130E+00, & -0.5808602675284530E+00, 0.4689274086788320E+00, -0.6653633856747230E+00, & 0.4689274083726140E+00, -0.6653633856988030E+00, -0.5808602677480780E+00 & /), (/ 3, 50 /) ) x(1:3,101:150) = temp(1:3,1:50) temp(1:3,1:50) = reshape ( (/ & -0.5808602676408769E+00, -0.4689274085527620E+00, 0.6653633856654270E+00, & -0.4689274084683360E+00, -0.6653633858479470E+00, 0.5808602674999610E+00, & 0.5808602673867520E+00, -0.4689274086545190E+00, -0.6653633858155630E+00, & -0.4689274083756990E+00, 0.6653633856513560E+00, -0.5808602677999380E+00, & 0.6653633856518190E+00, -0.5808602677912120E+00, -0.4689274083858500E+00, & -0.6653633857517340E+00, 0.5808602675480170E+00, -0.4689274085453260E+00, & -0.5801253673053040E+00, -0.7790995979244340E+00, 0.2376097109187070E+00, & -0.7790995980535180E+00, 0.2376097109099340E+00, -0.5801253671355390E+00, & 0.5801253671868080E+00, 0.7790995979777320E+00, 0.2376097110332580E+00, & 0.2376097106959320E+00, -0.5801253672761100E+00, -0.7790995980141140E+00, & 0.7790995980647319E+00, 0.2376097111473200E+00, 0.5801253670232500E+00, & 0.2376097108192850E+00, 0.5801253670474260E+00, 0.7790995981467740E+00, & 0.7790995981702240E+00, -0.2376097108496420E+00, -0.5801253670034990E+00, & -0.2376097108118020E+00, 0.5801253671572560E+00, -0.7790995980672760E+00, & -0.7790995980749610E+00, -0.2376097110451280E+00, 0.5801253670513690E+00, & -0.2376097106092530E+00, -0.5801253670223590E+00, 0.7790995982294950E+00, & -0.5801253670900940E+00, 0.7790995981519661E+00, -0.2376097106980860E+00, & 0.5801253672184110E+00, -0.7790995979667160E+00, -0.2376097109922150E+00, & 0.9586680253602000E+00, 0.1011136059005390E+00, -0.2659542363899560E+00, & 0.1011136058898930E+00, -0.2659542364771990E+00, 0.9586680253371200E+00, & -0.9586680253264100E+00, -0.1011136060954320E+00, -0.2659542364376600E+00, & -0.2659542366341790E+00, 0.9586680252945550E+00, 0.1011136058805580E+00, & -0.1011136060031710E+00, -0.2659542366563170E+00, -0.9586680252754820E+00, & -0.2659542367154550E+00, -0.9586680252461620E+00, -0.1011136061256020E+00, & -0.1011136058254380E+00, 0.2659542364146640E+00, 0.9586680253612671E+00, & 0.2659542362867390E+00, -0.9586680253935830E+00, 0.1011136058555220E+00, & 0.1011136058024440E+00, 0.2659542362606640E+00, -0.9586680254064150E+00, & 0.2659542365158540E+00, 0.9586680253225770E+00, -0.1011136059261060E+00, & 0.9586680254495000E+00, -0.1011136059091010E+00, 0.2659542360648080E+00, & -0.9586680254786000E+00, 0.1011136057894970E+00, 0.2659542360053860E+00, & -0.7844318144170850E+00, 0.2843190250072290E+00, 0.5512072392025160E+00, & 0.2843190248228480E+00, 0.5512072393207090E+00, -0.7844318144008620E+00, & 0.7844318144434220E+00, -0.2843190248881310E+00, 0.5512072392264670E+00, & 0.5512072394346770E+00, -0.7844318142918880E+00, 0.2843190249025560E+00, & -0.2843190246401610E+00, 0.5512072393475040E+00, 0.7844318144482491E+00, & 0.5512072394083570E+00, 0.7844318144009980E+00, -0.2843190246525460E+00, & -0.2843190247149400E+00, -0.5512072391601370E+00, -0.7844318145528040E+00, & -0.5512072394176490E+00, 0.7844318144267430E+00, 0.2843190245635030E+00, & 0.2843190244771060E+00, -0.5512072393940670E+00, 0.7844318144746290E+00, & -0.5512072392271640E+00, -0.7844318145108320E+00, -0.2843190247007970E+00, & -0.7844318146549000E+00, -0.2843190247577290E+00, -0.5512072389927720E+00, & 0.7844318145421389E+00, 0.2843190246898840E+00, -0.5512072391882400E+00, & 0.1666638785351180E+00, 0.9794687788666500E+00, 0.1134198519532850E+00, & 0.9794687788923619E+00, 0.1134198520112480E+00, 0.1666638783445640E+00, & -0.1666638783223350E+00, -0.9794687788772219E+00, 0.1134198521746590E+00, & 0.1134198518526030E+00, 0.1666638784650920E+00, 0.9794687788902240E+00, & -0.9794687789080510E+00, 0.1134198522332290E+00, -0.1666638781012970E+00, & 0.1134198520235320E+00, -0.1666638782131650E+00, -0.9794687789132980E+00, & -0.9794687788914180E+00, -0.1134198520887550E+00, 0.1666638782973680E+00, & -0.1134198519422990E+00, -0.1666638783837850E+00, 0.9794687788936730E+00 & /), (/ 3, 50 /) ) x(1:3,151:200) = temp(1:3,1:50) temp(1:3,1:40) = reshape ( (/ & 0.9794687788877920E+00, -0.1134198522526510E+00, -0.1666638782071420E+00, & -0.1134198518873330E+00, 0.1666638784200610E+00, -0.9794687788938650E+00, & 0.1666638785133120E+00, -0.9794687788588400E+00, -0.1134198520527750E+00, & -0.1666638785259920E+00, 0.9794687788524030E+00, -0.1134198520897270E+00, & 0.9035426353908700E+00, 0.9900269067959901E-01, 0.4169042735078650E+00, & 0.9900269051118001E-01, 0.4169042737536920E+00, 0.9035426352958970E+00, & -0.9035426353835330E+00, -0.9900269064792300E-01, 0.4169042735312880E+00, & 0.4169042739582500E+00, 0.9035426351937680E+00, 0.9900269058185000E-01, & -0.9900269041493300E-01, 0.4169042736997320E+00, -0.9035426353313410E+00, & 0.4169042738439640E+00, -0.9035426352375170E+00, -0.9900269066384500E-01, & -0.9900269046419199E-01, -0.4169042739372540E+00, 0.9035426352163480E+00, & -0.4169042742060360E+00, -0.9035426351101470E+00, 0.9900269030157501E-01, & 0.9900269012804400E-01, -0.4169042740643800E+00, -0.9035426351945230E+00, & -0.4169042741137440E+00, 0.9035426351313860E+00, -0.9900269049639200E-01, & 0.9035426352792750E+00, -0.9900269046710200E-01, -0.4169042738001830E+00, & -0.9035426352343990E+00, 0.9900269024582900E-01, -0.4169042739499880E+00, & 0.2787624045360920E+00, 0.3493121855370630E+00, -0.8945795206981750E+00, & 0.3493121855860560E+00, -0.8945795206085150E+00, 0.2787624047624310E+00, & -0.2787624045405250E+00, -0.3493121855034730E+00, -0.8945795207099100E+00, & -0.8945795207341440E+00, 0.2787624047279170E+00, 0.3493121852918660E+00, & -0.3493121854667010E+00, -0.8945795206777230E+00, -0.2787624046898960E+00, & -0.8945795207888640E+00, -0.2787624046586770E+00, -0.3493121852069840E+00, & -0.3493121855510410E+00, 0.8945795206827980E+00, 0.2787624045679230E+00, & 0.8945795207852190E+00, -0.2787624046804690E+00, 0.3493121851989290E+00, & 0.3493121855496230E+00, 0.8945795206792300E+00, -0.2787624045811490E+00, & 0.8945795207818050E+00, 0.2787624045559080E+00, -0.3493121853070750E+00, & 0.2787624044379500E+00, -0.3493121855065000E+00, 0.8945795207406920E+00, & -0.2787624044432590E+00, 0.3493121854287870E+00, 0.8945795207693820E+00, & 0.5558962301794150E+00, -0.6768332117366710E+00, 0.4825724658147600E+00, & -0.6768332116815670E+00, 0.4825724660401160E+00, 0.5558962300508760E+00, & -0.5558962303148920E+00, 0.6768332115229870E+00, 0.4825724659584010E+00, & 0.4825724659102830E+00, 0.5558962301646720E+00, -0.6768332116806730E+00, & 0.6768332114576920E+00, 0.4825724660928950E+00, -0.5558962302776390E+00, & 0.4825724659029810E+00, -0.5558962303679090E+00, 0.6768332115189570E+00, & 0.6768332116355920E+00, -0.4825724660719810E+00, 0.5558962300791910E+00, & -0.4825724661505860E+00, -0.5558962302300841E+00, -0.6768332114556160E+00, & -0.6768332114382860E+00, -0.4825724663277370E+00, -0.5558962300974000E+00, & -0.4825724659723730E+00, 0.5558962302677700E+00, 0.6768332115517270E+00, & 0.5558962301926910E+00, 0.6768332115894530E+00, -0.4825724660059490E+00, & -0.5558962301943380E+00, -0.6768332114555370E+00, -0.4825724661918750E+00 & /), (/ 3, 40 /) ) x(1:3,201:240) = temp(1:3,1:40) return end subroutine design_order_max ( order_max ) ! !******************************************************************************* ! !! DESIGN_ORDER_MAX returns the maximum design order. ! ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, integer ORDER_MAX, the maximum design order. ! implicit none ! integer order_max ! order_max = 21 return end subroutine design_points ( order, n, x ) ! !******************************************************************************* ! !! DESIGN_POINTS returns the points for a given design. ! ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, integer ORDER, the desired order of the design. ! ! Input, integer N, the number of points associated with the design, ! as returned by DESIGN_ORDER. ! ! Output, real X(3,N), the points associated with the design. ! implicit none ! integer n ! integer order real x(n) ! if ( order == 0 ) then call design_00_001_3d ( x ) else if ( order == 1 ) then call design_01_002_3d ( x ) else if ( order == 2 ) then call design_02_004_3d ( x ) else if ( order == 3 ) then call design_03_006_3d ( x ) else if ( order == 4 ) then call design_04_014_3d ( x ) else if ( order == 5 ) then call design_05_012_3d ( x ) else if ( order == 6 ) then call design_06_026_3d ( x ) else if ( order == 7 ) then call design_07_024_3d ( x ) else if ( order == 8 ) then call design_08_036_3d ( x ) else if ( order == 9 ) then call design_09_048_3d ( x ) else if ( order == 10 ) then call design_10_060_3d ( x ) else if ( order == 11 ) then call design_11_070_3d ( x ) else if ( order == 12 ) then call design_12_084_3d ( x ) else if ( order == 13 ) then call design_13_094_3d ( x ) else if ( order == 14 ) then call design_14_108_3d ( x ) else if ( order == 15 ) then call design_15_120_3d ( x ) else if ( order == 16 ) then call design_16_144_3d ( x ) else if ( order == 17 ) then call design_17_156_3d ( x ) else if ( order == 18 ) then call design_18_180_3d ( x ) else if ( order == 19 ) then call design_19_204_3d ( x ) else if ( order == 20 ) then call design_20_216_3d ( x ) else if ( order == 21 ) then call design_21_240_3d ( x ) else write ( *, '(a)' ) ' ' write ( *, '(a)' ) 'DESIGN_POINTS - Fatal error!' write ( *, '(a,i6)' ) ' There is no information for ORDER = ', order stop end if return end subroutine design_quad ( xc, r, func_3d, order, quad ) ! !******************************************************************************* ! !! DESIGN_QUAD approximates an integral with a design of a given order. ! ! ! Discussion: ! ! The design is defined for the unit sphere, and provides a ! guaranteed accuracy for integrals of polynomials of a given ! degree over the surface of the unit sphere. ! ! The same guarantee applies if the sphere is scaled to have ! a non-unit radius R. ! ! The same guarantee applies if the center of the sphere is ! translated by XC. ! ! Modified: ! ! 08 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, real XC(3), the coordinates of the center of the sphere. ! ! Input, real R, the radius of the sphere. ! ! Input, real, external FUNC_3D, evaluates the function. ! ! Input, integer ORDER, the desired order of the design. ! ! Output, real QUAD, the approximate integral of the function. ! implicit none ! real, external :: func_3d integer i integer j integer n integer order real quad real r real, allocatable, dimension ( :, : ) :: x real xc(3) ! call design_size ( order, n ) if ( n == 0 ) then quad = 0.0E+00 return end if allocate ( x(1:3,1:n) ) call design_points ( order, n, x ) x(1:3,1:n) = r * x(1:3,1:n) do i = 1, 3 x(i,1:n) = x(i,1:n) + xc(i) end do if ( .false. ) then write ( *, '(a)' ) ' ' write ( *, '(a)' ) 'The design points:' write ( *, '(a)' ) ' ' do j = 1, n write ( *, '(i6,3g14.6)' ) j, x(1:3,j) end do end if quad = 0.0E+00 do j = 1, n quad = quad + func_3d ( x(1:3,j) ) end do quad = quad * r**2 / real ( n ) deallocate ( x ) return end subroutine design_size ( order, n ) ! !******************************************************************************* ! !! DESIGN_SIZE returns the size N of a design of a given order. ! ! ! Modified: ! ! 09 June 2002 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, integer ORDER, the desired order of the design. ! ! Output, integer N, the number of points associated with the design. ! implicit none ! integer n integer order ! if ( order == 0 ) then n = 1 else if ( order == 1 ) then n = 2 else if ( order == 2 ) then n = 4 else if ( order == 3 ) then n = 6 else if ( order == 4 ) then n = 14 else if ( order == 5 ) then n = 12 else if ( order == 6 ) then n = 26 else if ( order == 7 ) then n = 24 else if ( order == 8 ) then n = 36 else if ( order == 9 ) then n = 48 else if ( order == 10 ) then n = 60 else if ( order == 11 ) then n = 70 else if ( order == 12 ) then n = 84 else if ( order == 13 ) then n = 94 else if ( order == 14 ) then n = 108 else if ( order == 15 ) then n = 120 else if ( order == 16 ) then n = 144 else if ( order == 17 ) then n = 156 else if ( order == 18 ) then n = 180 else if ( order == 19 ) then n = 204 else if ( order == 20 ) then n = 216 else if ( order == 21 ) then n = 240 else n = 0 end if return end function gamma ( x ) ! !******************************************************************************* ! !! GAMMA returns the value of the Gamma function at X. ! ! ! Definition: ! ! GAMMA(Z) = Integral ( 0 <= T < Infinity) T**(Z-1) EXP(-T) dT ! ! Recursion: ! ! GAMMA(X+1) = X*GAMMA(X) ! ! Restrictions: ! ! X > 0 ( a software restriction). ! ! Special values: ! ! GAMMA(0.5) = sqrt(PI) ! ! For N a positive integer, GAMMA(N+1) = N!, the standard factorial. ! ! Modified: ! ! 14 April 1999 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, real X, the point at which the Gamma function is desired. ! ! Output, real GAMMA, the Gamma function of X. ! implicit none ! real gamma real gamma_log real x ! gamma = exp ( gamma_log ( x ) ) return end function gamma_log ( x ) ! !******************************************************************************* ! !! GAMMA_LOG calculates the natural logarithm of GAMMA ( X ) for positive X. ! ! ! Discussion: ! ! Computation is based on an algorithm outlined in references 1 and 2. ! The program uses rational functions that theoretically approximate ! log ( GAMMA(X) ) to at least 18 significant decimal digits. The ! approximation for X > 12 is from reference 3, while approximations ! for X < 12.0 are similar to those in reference 1, but are unpublished. ! The accuracy achieved depends on the arithmetic system, the compiler, ! intrinsic functions, and proper selection of the machine-dependent ! constants. ! ! Modified: ! ! 16 June 1999 ! ! Authors: ! ! W. J. Cody and L. Stoltz ! Argonne National Laboratory ! ! References: ! ! # 1) ! W. J. Cody and K. E. Hillstrom, ! Chebyshev Approximations for the Natural Logarithm of the Gamma Function, ! Math. Comp. ! Volume 21, 1967, pages 198-203. ! ! # 2) ! K. E. Hillstrom, ! ANL/AMD Program ANLC366S, DGAMMA/DLGAMA, ! May 1969. ! ! # 3) ! Hart, Et. Al., ! Computer Approximations, ! Wiley and Sons, New York, 1968. ! ! Parameters: ! ! Input, real X, the argument of the Gamma function. X must be positive. ! ! Output, real GAMMA_LOG, the logarithm of the Gamma function of X. ! If X <= 0.0, or if overflow would occur, the program returns the ! value XINF, the largest representable floating point number. ! ! Mmachine-dependent constants: ! ! BETA - radix for the floating-point representation. ! ! MAXEXP - the smallest positive power of BETA that overflows. ! ! XBIG - largest argument for which LN(GAMMA(X)) is representable ! in the machine, i.e., the solution to the equation ! LN(GAMMA(XBIG)) = BETA**MAXEXP. ! ! XINF - largest machine representable floating-point number; ! approximately BETA**MAXEXP. ! ! EPS - The smallest positive floating-point number such that ! 1.0+EPS > 1.0 ! ! FRTBIG - Rough estimate of the fourth root of XBIG ! ! ! Approximate values for some important machines are: ! ! BETA MAXEXP XBIG ! ! CRAY-1 (S.P.) 2 8191 9.62E+2461 ! Cyber 180/855 ! under NOS (S.P.) 2 1070 1.72E+319 ! IEEE (IBM/XT, ! SUN, etc.) (S.P.) 2 128 4.08E+36 ! IEEE (IBM/XT, ! SUN, etc.) (D.P.) 2 1024 2.55D+305 ! IBM 3033 (D.P.) 16 63 4.29D+73 ! VAX D-Format (D.P.) 2 127 2.05D+36 ! VAX G-Format (D.P.) 2 1023 1.28D+305 ! ! ! XINF EPS FRTBIG ! ! CRAY-1 (S.P.) 5.45E+2465 7.11E-15 3.13E+615 ! Cyber 180/855 ! under NOS (S.P.) 1.26E+322 3.55E-15 6.44E+79 ! IEEE (IBM/XT, ! SUN, etc.) (S.P.) 3.40E+38 1.19E-7 1.42E+9 ! IEEE (IBM/XT, ! SUN, etc.) (D.P.) 1.79D+308 2.22D-16 2.25D+76 ! IBM 3033 (D.P.) 7.23D+75 2.22D-16 2.56D+18 ! VAX D-Format (D.P.) 1.70D+38 1.39D-17 1.20D+9 ! VAX G-Format (D.P.) 8.98D+307 1.11D-16 1.89D+76 ! implicit none ! real, parameter, dimension ( 7 ) :: c = (/ & -1.910444077728E-03, & 8.4171387781295E-04, & -5.952379913043012E-04, & 7.93650793500350248E-04, & -2.777777777777681622553E-03, & 8.333333333333333331554247E-02, & 5.7083835261E-03 /) real corr real, parameter :: d1 = - 5.772156649015328605195174E-01 real, parameter :: d2 = 4.227843350984671393993777E-01 real, parameter :: d4 = 1.791759469228055000094023E+00 real eps real, parameter :: frtbig = 1.42E+09 integer i real gamma_log real, parameter, dimension ( 8 ) :: p1 = (/ & 4.945235359296727046734888E+00, & 2.018112620856775083915565E+02, & 2.290838373831346393026739E+03, & 1.131967205903380828685045E+04, & 2.855724635671635335736389E+04, & 3.848496228443793359990269E+04, & 2.637748787624195437963534E+04, & 7.225813979700288197698961E+03 /) real, parameter, dimension ( 8 ) :: p2 = (/ & 4.974607845568932035012064E+00, & 5.424138599891070494101986E+02, & 1.550693864978364947665077E+04, & 1.847932904445632425417223E+05, & 1.088204769468828767498470E+06, & 3.338152967987029735917223E+06, & 5.106661678927352456275255E+06, & 3.074109054850539556250927E+06 /) real, parameter, dimension ( 8 ) :: p4 = (/ & 1.474502166059939948905062E+04, & 2.426813369486704502836312E+06, & 1.214755574045093227939592E+08, & 2.663432449630976949898078E+09, & 2.940378956634553899906876E+10, & 1.702665737765398868392998E+11, & 4.926125793377430887588120E+11, & 5.606251856223951465078242E+11 /) real, parameter :: pnt68 = 0.6796875E+00 real, parameter, dimension ( 8 ) :: q1 = (/ & 6.748212550303777196073036E+01, & 1.113332393857199323513008E+03, & 7.738757056935398733233834E+03, & 2.763987074403340708898585E+04, & 5.499310206226157329794414E+04, & 6.161122180066002127833352E+04, & 3.635127591501940507276287E+04, & 8.785536302431013170870835E+03 /) real, parameter, dimension ( 8 ) :: q2 = (/ & 1.830328399370592604055942E+02, & 7.765049321445005871323047E+03, & 1.331903827966074194402448E+05, & 1.136705821321969608938755E+06, & 5.267964117437946917577538E+06, & 1.346701454311101692290052E+07, & 1.782736530353274213975932E+07, & 9.533095591844353613395747E+06 /) real, parameter, dimension ( 8 ) :: q4 = (/ & 2.690530175870899333379843E+03, & 6.393885654300092398984238E+05, & 4.135599930241388052042842E+07, & 1.120872109616147941376570E+09, & 1.488613728678813811542398E+10, & 1.016803586272438228077304E+11, & 3.417476345507377132798597E+11, & 4.463158187419713286462081E+11 /) real res real, parameter :: sqrtpi = 0.9189385332046727417803297E+00 real x real, parameter :: xbig = 4.08E+36 real xden real xm1 real xm2 real xm4 real xnum real xsq ! ! Return immediately if the argument is out of range. ! if ( x <= 0.0E+00 .or. x > xbig ) then gamma_log = huge ( gamma_log ) return end if eps = epsilon ( eps ) if ( x <= eps ) then res = - log ( x ) else if ( x <= 1.5E+00 ) then if ( x < pnt68 ) then corr = - log ( x ) xm1 = x else corr = 0.0E+00 xm1 = ( x - 0.5E+00 ) - 0.5E+00 end if if ( x <= 0.5E+00 .or. x >= pnt68 ) then xden = 1.0E+00 xnum = 0.0E+00 do i = 1, 8 xnum = xnum * xm1 + p1(i) xden = xden * xm1 + q1(i) end do res = corr + ( xm1 * ( d1 + xm1 * ( xnum / xden ) ) ) else xm2 = ( x - 0.5E+00 ) - 0.5E+00 xden = 1.0E+00 xnum = 0.0E+00 do i = 1, 8 xnum = xnum * xm2 + p2(i) xden = xden * xm2 + q2(i) end do res = corr + xm2 * ( d2 + xm2 * ( xnum / xden ) ) end if else if ( x <= 4.0E+00 ) then xm2 = x - 2.0E+00 xden = 1.0E+00 xnum = 0.0E+00 do i = 1, 8 xnum = xnum * xm2 + p2(i) xden = xden * xm2 + q2(i) end do res = xm2 * ( d2 + xm2 * ( xnum / xden ) ) else if ( x <= 12.0E+00 ) then xm4 = x - 4.0E+00 xden = - 1.0E+00 xnum = 0.0E+00 do i = 1, 8 xnum = xnum * xm4 + p4(i) xden = xden * xm4 + q4(i) end do res = d4 + xm4 * ( xnum / xden ) else res = 0.0E+00 if ( x <= frtbig ) then res = c(7) xsq = x * x do i = 1, 6 res = res / xsq + c(i) end do end if res = res / x corr = log ( x ) res = res + sqrtpi - 0.5E+00 * corr res = res + x * ( corr - 1.0E+00 ) end if gamma_log = res return end function r_pi ( ) ! !******************************************************************************* ! !! R_PI returns the value of pi. ! ! ! Modified: ! ! 04 December 1998 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Output, real R_PI, the value of pi. ! implicit none ! real r_pi ! r_pi = 3.14159265358979323846264338327950288419716939937510E+00 return end subroutine s_cat ( s1, s2, s3 ) ! !******************************************************************************* ! !! S_CAT concatenates two strings to make a third string. ! ! ! Modified: ! ! 18 September 2000 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, character ( len = * ) S1, the "prefix" string. ! ! Input, character ( len = * ) S2, the "postfix" string. ! ! Output, character ( len = * ) S3, the string made by ! concatenating S1 and S2, ignoring any trailing blanks. ! implicit none ! character ( len = * ) s1 character ( len = * ) s2 character ( len = * ) s3 ! if ( s1 == ' ' .and. s2 == ' ' ) then s3 = ' ' else if ( s1 == ' ' ) then s3 = s2 else if ( s2 == ' ' ) then s3 = s1 else s3 = trim ( s1 ) // trim ( s2 ) end if return end subroutine sphere_area_3d ( r, area ) ! !******************************************************************************* ! !! SPHERE_AREA_3D computes the surface area of a sphere in 3D. ! ! ! Formula: ! ! A sphere in 3D satisfies the equation: ! ! ( X - XC )**2 + ( Y - YC )**2 + ( Z - ZC )**2 = R**2 ! ! Modified: ! ! 26 January 1999 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! Input, real R, the radius of the sphere. ! ! Output, real AREA, the area of the sphere. ! implicit none ! real area real r_pi real r ! area = 4.0E+00 * r_pi ( ) * r * r return end subroutine sphere_monomial_int_3d ( r, e, integral ) ! !******************************************************************************* ! !! SPHERE_MONOMIAL_INT_3D integrates a monomial on a sphere in 3D. ! ! ! Discussion: ! ! The sphere may have nonunit radius, but it must be centered at 0. ! ! The integration region is ! ! X**2 + Y**2 + Z**2 = R**2. ! ! The monomial is F(X,Y,Z) = X**E(1) * Y**E(2) * Z**E(3). ! ! Modified: ! ! 24 June 2002 ! ! Author: ! ! John Burkardt ! ! Reference: ! ! Philip Davis and Philip Rabinowitz, ! Methods of Numerical Integration, ! Second Edition, ! Academic Press, 1984, page 263. ! ! Parameters: ! ! Input, real R, the radius of the sphere. ! ! Input, integer E(3), the exponents of X, Y and Z in the monomial. ! Each exponent must be nonnegative. ! ! Output, real INTEGRAL, the integral. ! implicit none ! integer, parameter :: n = 3 ! integer e(n) real gamma integer i real integral real r real r_pi ! if ( any ( e(1:n) < 0 ) ) then integral = - huge ( integral ) write ( *, '(a)' ) ' ' write ( *, '(a)' ) 'SPHERE_MONOMIAL_INT_3D - Fatal error!' write ( *, '(a)' ) ' All exponents must be nonnegative.' stop end if if ( all ( e(1:n) == 0 ) ) then integral = 2.0E+00 * sqrt ( r_pi ( )**n ) / gamma ( 0.5E+00 * real ( n ) ) else if ( any ( mod ( e(1:n), 2 ) == 1 ) ) then integral = 0.0E+00 else integral = 2.0E+00 do i = 1, n integral = integral * gamma ( 0.5E+00 * real ( e(i) + 1 ) ) end do integral = integral / gamma ( 0.5E+00 * ( real ( sum ( e(1:n) + 1 ) ) ) ) end if integral = integral * r**( sum ( e(1:n) ) + 2 ) return end subroutine timestamp ( ) ! !******************************************************************************* ! !! TIMESTAMP prints the current YMDHMS date as a time stamp. ! ! ! Example: ! ! May 31 2001 9:45:54.872 AM ! ! Modified: ! ! 31 May 2001 ! ! Author: ! ! John Burkardt ! ! Parameters: ! ! None ! implicit none ! character ( len = 8 ) ampm integer d character ( len = 8 ) date integer h integer m integer mm character ( len = 9 ), parameter, dimension(12) :: month = (/ & 'January ', 'February ', 'March ', 'April ', & 'May ', 'June ', 'July ', 'August ', & 'September', 'October ', 'November ', 'December ' /) integer n integer s character ( len = 10 ) time integer values(8) integer y character ( len = 5 ) zone ! call date_and_time ( date, time, zone, values ) y = values(1) m = values(2) d = values(3) h = values(5) n = values(6) s = values(7) mm = values(8) if ( h < 12 ) then ampm = 'AM' else if ( h == 12 ) then if ( n == 0 .and. s == 0 ) then ampm = 'Noon' else ampm = 'PM' end if else h = h - 12 if ( h < 12 ) then ampm = 'PM' else if ( h == 12 ) then if ( n == 0 .and. s == 0 ) then ampm = 'Midnight' else ampm = 'AM' end if end if end if write ( *, '(a,1x,i2,1x,i4,2x,i2,a1,i2.2,a1,i2.2,a1,i3.3,1x,a)' ) & trim ( month(m) ), d, y, h, ':', n, ':', s, '.', mm, trim ( ampm ) return end