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