Tammes problem: the minimum angle of the best known spherical codes
edit · history · discussion · files · short url · sequence discrete geometry
Numbers
$n$
normalisation 
$\theta_n$ or $d_n$
4
$\theta_n$:
109.4712206344906913692459993399624359630068431009079482881711063560397464380603955633618712883605876
comment: The regular tetrahedron has $\cos(\pi\theta_4/180)=-1/3$ and $d_4=\sqrt{8/3}$. Optimality is proven [1].
4
$d_n$:
1.632993161855452065464856049803927594643964987104446752288461711500640251638210017693239622069760157
comment: The regular tetrahedron has $\cos(\pi\theta_4/180)=-1/3$ and $d_4=\sqrt{8/3}$. Optimality is proven [1].
5
$\theta_n$:
90
comment: $\theta_n=90$ and $d_n=\sqrt2$. Optimality is proven [2] [1].
5
$d_n$:
1.414213562373095048801688724209698078569671875376948073176679737990732478462107038850387534327641573
comment: $\theta_n=90$ and $d_n=\sqrt2$. Optimality is proven [2] [1].
6
$\theta_n$:
90
comment: $\theta_n=90$ and $d_n=\sqrt2$. Optimality is proven [2] [1].
6
$d_n$:
1.414213562373095048801688724209698078569671875376948073176679737990732478462107038850387534327641573
comment: $\theta_n=90$ and $d_n=\sqrt2$. Optimality is proven [2] [1].
7
$\theta_n$:
77.86954215542338680591828838037453919424590740642133591865073074314973538311781413484159439425902080
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $3x^{3}-9x^{2}-3x+1$ in $(0.210138312731-10^{-10},0.210138312731+10^{-10})$ [9]. Optimality is proven [2].
7
$d_n$:
1.256870468480660034904024544082533192335643253156436631660011061050399906071854844332135412434113098
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $3x^{3}-9x^{2}-3x+1$ in $(0.210138312731-10^{-10},0.210138312731+10^{-10})$ [9]. Optimality is proven [2].
8
$\theta_n$:
74.85849218561553500792611345605364079751084282049393387781847245319275920507463481339684227896154942
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{2}+2x-1$ in $(0.261203874964-10^{-10},0.261203874964+10^{-10})$ [9]. Optimality is proven [2].
8
$d_n$:
1.215562524131324605953884044732586661891605201667569759533735165691857679343105190624294468375968250
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{2}+2x-1$ in $(0.261203874964-10^{-10},0.261203874964+10^{-10})$ [9]. Optimality is proven [2].
9
$\theta_n$:
70.52877936550930863075400066003756403699315689909205171182889364396025356193960443663812871163941235
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $3x-1$ in $(0.333333333334-10^{-10},0.333333333334+10^{-10})$ [9]. Optimality is proven [2].
9
$d_n$:
1.154700538379251529018297561003914911295203502540253752037204652967955344605866691387430791171499050
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $3x-1$ in $(0.333333333334-10^{-10},0.333333333334+10^{-10})$ [9]. Optimality is proven [2].
10
$\theta_n$:
66.14682198789054287220577533235752791223071708063365606081265231850570982361238460449340260549072983
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{3}-4x^{2}-2x+1$ in $(0.404394325217-10^{-10},0.404394325217+10^{-10})$ [9]. Optimality is proven [3].
10
$d_n$:
1.091426291403821042434682867757394743310099228970515891159497186619426980252598733761621464267204957
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{3}-4x^{2}-2x+1$ in $(0.404394325217-10^{-10},0.404394325217+10^{-10})$ [9]. Optimality is proven [3].
11
$\theta_n$:
63.43494882292201064842780627954670532879578570035477897201398368471193417851525938829142618939783528
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $5x^{2}-1$ in $(0.447213595500-10^{-10},0.447213595500+10^{-10})$ [9]. Optimality is proven [3].
11
$d_n$:
1.051462224238267212051338169695753214570995864486683563057871046482422292806428036743265257663105142
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $5x^{2}-1$ in $(0.447213595500-10^{-10},0.447213595500+10^{-10})$ [9]. Optimality is proven [3].
12
$\theta_n$:
63.43494882292201064842780627954670532879578570035477897201398368471193417851525938829142618939783528
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $5x^{2}-1$ in $(0.447213595500-10^{-10},0.447213595500+10^{-10})$ [9]. Optimality is proven [1].
12
$d_n$:
1.051462224238267212051338169695753214570995864486683563057871046482422292806428036743265257663105142
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $5x^{2}-1$ in $(0.447213595500-10^{-10},0.447213595500+10^{-10})$ [9]. Optimality is proven [1].
13
$\theta_n$:
57.13670307757834201767700274322533597760711636528224555516565534861346950278936664449157529803315396
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $x^{8}-24x^{7}-12x^{6}+8x^{5}+38x^{4}+24x^{3}-12x^{2}-8x+1$ in $(0.542636486830-10^{-10},0.542636486830+10^{-10})$ [9]. Optimality is proven [4].
13
$d_n$:
0.9564136272244990720875205665808557947269876360823935179447247145199889402438175360251024534129268150
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $x^{8}-24x^{7}-12x^{6}+8x^{5}+38x^{4}+24x^{3}-12x^{2}-8x+1$ in $(0.542636486830-10^{-10},0.542636486830+10^{-10})$ [9]. Optimality is proven [4].
14
$\theta_n$:
55.67056999565952572422946524468126528134983339933129590091570352836575510701258072290020366120459492
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $4x^{4}-2x^{3}+3x^{2}-1$ in $(0.563950300361-10^{-10},0.563950300361+10^{-10})$ [9]. Optimality is proven [5].
14
$d_n$:
0.9338626233440278688077841691123048999950999946977422766327774075751129850007292358699087911906913833
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $4x^{4}-2x^{3}+3x^{2}-1$ in $(0.563950300361-10^{-10},0.563950300361+10^{-10})$ [9]. Optimality is proven [5].
15
$\theta_n$:
53.65785012993267380552604148370299303169577018942255647465603609403395050000327059497239044377493759
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $13x^{5}-x^{4}+6x^{3}+2x^{2}-3x-1$ in $(0.592605902926-10^{-10},0.592605902926+10^{-10})$ [9]. Cohn marks this configuration as optimal, citing the 2026 preprint [7]; that proof claim is distinguished here from the established published cases.
15
$d_n$:
0.9026561882299663511276264760307219938239215614122841771344488235999651726273727841908295218026690448
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $13x^{5}-x^{4}+6x^{3}+2x^{2}-3x-1$ in $(0.592605902926-10^{-10},0.592605902926+10^{-10})$ [9]. Cohn marks this configuration as optimal, citing the 2026 preprint [7]; that proof claim is distinguished here from the established published cases.
16
$\theta_n$:
52.24439575272065377204341696894192408372344517847959576403435169874430504823078187364332134385647256
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $23x^{6}+6x^{5}+5x^{4}+4x^{3}-3x^{2}-2x-1$ in $(0.612294616483-10^{-10},0.612294616483+10^{-10})$ [9].
16
$d_n$:
0.8805741121760318749621097470943480162399443231658259154473708725447978848627326948539161468949108172
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $23x^{6}+6x^{5}+5x^{4}+4x^{3}-3x^{2}-2x-1$ in $(0.612294616483-10^{-10},0.612294616483+10^{-10})$ [9].
17
$\theta_n$:
51.09032855162777854657552387628875512696140109538242717714956916962016320304792956793687517468126625
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
17
$d_n$:
0.8624448793169084073408845262983338825653241623297785110129646186099117287685098483793368096561656861
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
18
$\theta_n$:
49.55665476843424246091024211381574183273081464780093027384950985046921349197025762588699604800221768
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
18
$d_n$:
0.8382173557936908656657105762753363318752035308224810456154185138534639771572551133316250127721611622
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
19
$\theta_n$:
47.69191410876624840141630606242048882455884334136696319819462117952532994830283236056716513807861562
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
19
$d_n$:
0.8085581147202085326048189225383308759118591759714600683835929868359128245208954494958900105844163022
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
20
$\theta_n$:
47.43103622671058794874110898739208056495251708472259489802058097854051803072851876177063163448720652
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $21x^{3}-9x^{2}-5x+1$ in $(0.676477138130-10^{-10},0.676477138130+10^{-10})$ [9].
20
$d_n$:
0.8043915239115197786798331800377488477071546465562427822662686942369865463034830685161557357134335496
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $21x^{3}-9x^{2}-5x+1$ in $(0.676477138130-10^{-10},0.676477138130+10^{-10})$ [9].
21
$\theta_n$:
45.61322311
21
$d_n$:
0.7752439215
22
$\theta_n$:
44.74016116716264539249224387535237040533603841148933744771629301307369978526494619388751795720465498
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
22
$d_n$:
0.7611750671433078531679774887287235136368490028296560006502358555380840221519648322824553029290166432
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
23
$\theta_n$:
43.70996421
23
$d_n$:
0.7445173136
24
$\theta_n$:
43.69076710767579618171644921518231448443934426057622589508560623880706548956391472616352325219452075
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{3}+x^{2}-3x-1$ in $(0.723078468334-10^{-10},0.723078468334+10^{-10})$ [9]. Optimality is proven [6].
24
$d_n$:
0.7442063311562075967551192250788305032776327199015088815823724075583781520771015804522782613296565679
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $7x^{3}+x^{2}-3x-1$ in $(0.723078468334-10^{-10},0.723078468334+10^{-10})$ [9]. Optimality is proven [6].
25
$\theta_n$:
41.63446125970606406767024214741580439206152387118051048191563247810318655999535762806209426164383366
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
25
$d_n$:
0.7107761552303330599427222043473561053795135178734944886026131510343220056811048133280791217219247887
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
26
$\theta_n$:
41.03766160675250218608721374440023245934261213702983507114556637137177434726900940710701626633877561
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
26
$d_n$:
0.7010304171431628833141504526901419067964211066931217182959544662804611207665636461719674450599193749
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
27
$\theta_n$:
40.67760068512674658008426875219181826237202623047945250561214975101720910728948644177296019178585591
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
27
$d_n$:
0.6951414089570876888852481195205176391528617110516831083289331865074355279714766615139851438523810348
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
28
$\theta_n$:
39.35514357
28
$d_n$:
0.6734533951
29
$\theta_n$:
38.71365119
29
$d_n$:
0.6629005718
30
$\theta_n$:
38.59711595386765606658303351176410722068094792113867161902240174454545275938897731504661824649471709
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
30
$d_n$:
0.6609812779572696382718134325081396164782068706854392768941802836820873489371734658926068123699771659
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
31
$\theta_n$:
37.70982914370989458237011117017694655887335581557542773980966980224966084907075333286193910627414486
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
31
$d_n$:
0.6463457073444907495878761799859959746226221969240235534291369756195496148457204439825550738103842041
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
32
$\theta_n$:
37.47521397487154131177437208730674048457529757692086861566553292771657980069388220402500232544887019
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
32
$d_n$:
0.6424692757303458159434634750035208230179756704754858423655962813857269946389544403723583796118628602
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
33
$\theta_n$:
36.25455298
33
$d_n$:
0.6222578024
34
$\theta_n$:
35.80778440
34
$d_n$:
0.6148425210
35
$\theta_n$:
35.31980759
35
$d_n$:
0.6067326075
36
$\theta_n$:
35.18973226
36
$d_n$:
0.6045689617
37
$\theta_n$:
34.42240801
37
$d_n$:
0.5917896920
38
$\theta_n$:
34.25066067222863122268183736668475604863630632810011398334707877088116648114477850843863955089954015
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
38
$d_n$:
0.5889257008796497051926213773453604457703941908248557329352616866483774123559375006793547196752065076
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
39
$\theta_n$:
33.48904658
39
$d_n$:
0.5762094716
40
$\theta_n$:
33.15835626
40
$d_n$:
0.5706801688
41
$\theta_n$:
32.72909442
41
$d_n$:
0.5634956202
42
$\theta_n$:
32.50638634974149291094556186886744874622303767263225252061844035564707386377695798244050963969050693
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
42
$d_n$:
0.5597650370666593981132760330640500424180665121937637350403067449216294517833435746995413308835462916
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
43
$\theta_n$:
32.09062441
43
$d_n$:
0.5527949612
44
$\theta_n$:
31.98342303
44
$d_n$:
0.5509965911
45
$\theta_n$:
31.32308143
45
$d_n$:
0.5399083736
46
$\theta_n$:
30.95916349
46
$d_n$:
0.5337899084
47
$\theta_n$:
30.78181596
47
$d_n$:
0.5308062520
48
$\theta_n$:
30.76278555063470255272279475166525256460496249397517001625032210918509447938903220881838309834643441
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $34x^{5}+15x^{4}-12x^{3}-14x^{2}-6x-1$ in $(0.859292295076-10^{-10},0.859292295076+10^{-10})$ [9].
48
$d_n$:
0.5304860128680869911358365318309447191565187367298696885292842813336946860025663196956216413275569364
comment: With $c_n=\cos(\pi\theta_n/180)$, $c_n$ is the unique zero of $34x^{5}+15x^{4}-12x^{3}-14x^{2}-6x-1$ in $(0.859292295076-10^{-10},0.859292295076+10^{-10})$ [9].
49
$\theta_n$:
29.92358511
49
$d_n$:
0.5163497283
50
$\theta_n$:
29.75295639697365612330731744297445625024915826185666920679022507054042258853757167946710208712158170
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
50
$d_n$:
0.5134720846805647881992541205653954233345131537543003582529503063769833734110944962677356138605248128
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
51
$\theta_n$:
29.36840688
51
$d_n$:
0.5069825146
52
$\theta_n$:
29.19475790534553237106281307477898182637601182239826492917397555907891150912476625291156229181265596
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
52
$d_n$:
0.5040501784938189268309565236802392569339516330211263126733164376069960843951079997625282798520778085
comment: The cosine $c_n=\cos(\pi\theta_n/180)$ is algebraic. Its polynomial and isolating interval are specified in the attached sources.json and generate.py [9].
53
$\theta_n$:
28.81389721
53
$d_n$:
0.4976147024
54
$\theta_n$:
28.71692053
54
$d_n$:
0.4959751882
55
$\theta_n$:
28.26279142
55
$d_n$:
0.4882928496
56
$\theta_n$:
28.14804665
56
$d_n$:
0.4863505353
57
$\theta_n$:
27.82667595
57
$d_n$:
0.4809080211
58
$\theta_n$:
27.55641596
58
$d_n$:
0.4763281533
59
$\theta_n$:
27.39497567
59
$d_n$:
0.4735910955
60
$\theta_n$:
27.19283000
60
$d_n$:
0.4701625940
61
$\theta_n$:
26.87327787
61
$d_n$:
0.4647398341
62
$\theta_n$:
26.68399700
62
$d_n$:
0.4615260544
63
$\theta_n$:
26.48692251
63
$d_n$:
0.4581786097
64
$\theta_n$:
26.23504331
64
$d_n$:
0.4538982980
65
$\theta_n$:
26.06982995
65
$d_n$:
0.4510895508
66
$\theta_n$:
25.94744369
66
$d_n$:
0.4490082906
67
$\theta_n$:
25.68398135
67
$d_n$:
0.4445262022
68
$\theta_n$:
25.46382446
68
$d_n$:
0.4407790342
69
$\theta_n$:
25.33363644
69
$d_n$:
0.4385624098
70
$\theta_n$:
25.17091998
70
$d_n$:
0.4357911500
71
$\theta_n$:
24.98793806
71
$d_n$:
0.4326736951
72
$\theta_n$:
24.92648608
72
$d_n$:
0.4316264926
73
$\theta_n$:
24.55377925
73
$d_n$:
0.4252725511
74
$\theta_n$:
24.42093978
74
$d_n$:
0.4230068002
75
$\theta_n$:
24.30172251
75
$d_n$:
0.4209729097
76
$\theta_n$:
24.12819444
76
$d_n$:
0.4180116432
77
$\theta_n$:
24.00128368
77
$d_n$:
0.4158452965
78
$\theta_n$:
23.93102542
78
$d_n$:
0.4146457795
79
$\theta_n$:
23.62399170
79
$d_n$:
0.4094019799
80
$\theta_n$:
23.55306720
80
$d_n$:
0.4081902479
81
$\theta_n$:
23.34763768
81
$d_n$:
0.4046796417
82
$\theta_n$:
23.19460741
82
$d_n$:
0.4020636457
83
$\theta_n$:
23.08299764
83
$d_n$:
0.4001552655
84
$\theta_n$:
23.05173064
84
$d_n$:
0.3996205728
85
$\theta_n$:
22.77916207
85
$d_n$:
0.3949581589
86
$\theta_n$:
22.67436939
86
$d_n$:
0.3931650346
87
$\theta_n$:
22.54665743
87
$d_n$:
0.3909792903
88
$\theta_n$:
22.46788105
88
$d_n$:
0.3896308186
89
$\theta_n$:
22.31660235
89
$d_n$:
0.3870407572
90
$\theta_n$:
22.15402326
90
$d_n$:
0.3842564682
91
$\theta_n$:
22.05179633
91
$d_n$:
0.3825053589
92
$\theta_n$:
22.02758147
92
$d_n$:
0.3820905227
93
$\theta_n$:
21.81038013
93
$d_n$:
0.3783687833
94
$\theta_n$:
21.72371348
94
$d_n$:
0.3768833725
95
$\theta_n$:
21.59455006
95
$d_n$:
0.3746691942
96
$\theta_n$:
21.52060993
96
$d_n$:
0.3734014642
97
$\theta_n$:
21.40065028
97
$d_n$:
0.3713443829
98
$\theta_n$:
21.37106074
98
$d_n$:
0.3708369155
99
$\theta_n$:
21.13596738
99
$d_n$:
0.3668041349
100
$\theta_n$:
21.03120200
100
$d_n$:
0.3650064961
Definition
The Tammes problem maximises the minimum separation of $n$ points on the unit sphere in $\mathbb R^3$ [5]. Best known separations are recorded in two invertible normalisations: angle $\theta_n$ in degrees and chord length $d_n$.
Parameters
$n$
—   number of points ($n\geq2$)
normalisation
—   angular or chord separation (either angle or chord)
Formulas
(1)
$d_n=2\sin(\pi\theta_n/360)$ and $\theta_n=(360/\pi)\arcsin(d_n/2)$, with $0<\theta_n\leq180$ and $0<d_n\leq2$.
(2)
For the selected configuration $x_1,\ldots,x_n\in S^2$, let $c_n=\max_{i<j}\langle x_i,x_j\rangle$. Then $\theta_n=(180/\pi)\arccos(c_n)$ and $d_n=\sqrt{2-2c_n}$.
Comments
(3)
The snapshot was retrieved on 25 October 2026. For $7\leq n\leq100$, the configurations and algebraic descriptions are from Henry Cohn's table [9] [10]. For $4\leq n\leq6$, the source is the table of N. J. A. Sloane, R. H. Hardin, W. D. Smith and collaborators [11]. The attached source data preserve the coordinates, source addresses and file hashes.
(4)
Angles are measured in degrees. The angular separation in radians is $\pi\theta_n/180$. Chord lengths are measured on the sphere of radius one; the two normalisations describe the same separation.
(5)
Optimality is established for $4\leq n\leq14$ and $n=24$: by Fejes Tóth for $n=4,6,12$ [1], Schütte and van der Waerden for $n=5,7,8,9$ [2], Danzer for $n=10,11$ [3], Musin and Tarasov for $n=13,14$ [4] [5], and Robinson for $n=24$ [6]. Cohn also marks $n=15$ as optimal, citing the 2026 preprint [7]; this newer claim is recorded separately from the established published cases. The other entries are best known configurations, without an assertion of global optimality.
(6)
An exact algebraic description of an attainable separation does not prove its optimality. Cohn supplies such descriptions as minimal polynomials of $c_n=\cos(\pi\theta_n/180)$ [10]. These descriptions support the high precision rows even for configurations whose global optimality is not established.
(7)
For $n=97$, the snapshot uses the configuration credited to Lai and collaborators [8], with $\theta_{97}\approx21.40065028$ degrees. This improves the value $21.4006197$ degrees in the older Sloane table [11].
Programs
(P1)
Sage
import numberdb.sage as numberdb
from sage.rings.real_arb import RealBallField
R = RealBallField(numberdb.bits(100, losing=64))
# The regular tetrahedron, n = 4.
c = -R(1)/3
theta = 180*c.arccos()/R.pi()
d = (2-2*c).sqrt()
theta, d
References
[1]
L. Fejes Tóth, Über eine Abschätzung des kürzesten Abstandes zweier Punkte eines auf einer Kugelfläche liegenden Punktsystems, Jahresbericht der Deutschen Mathematiker-Vereinigung 53 (1943), 66–68.
[2]
K. Schütte and B. L. van der Waerden, Auf welcher Kugel haben 5, 6, 7, 8 oder 9 Punkte mit Mindestabstand Eins Platz?, Mathematische Annalen 123 (1951), 96–124. (doi)
[3]
L. Danzer, Finite point-sets on S² with minimum distance as large as possible, Discrete Mathematics 60 (1986), 3–66. (doi)
[4]
O. R. Musin and A. S. Tarasov, The strong thirteen spheres problem, Discrete & Computational Geometry 48 (2012), 128–141. (arXiv) (doi)
[5]
O. R. Musin and A. S. Tarasov, The Tammes problem for N = 14, Experimental Mathematics 24 (2015), 460–468. (arXiv) (doi)
[6]
R. M. Robinson, Arrangements of 24 points on a sphere, Mathematische Annalen 144 (1961), 17–48. (doi)
[7]
mt0-svg, The Tammes problem for fifteen points, preprint (2026). (doi)
[8]
X. Lai, D. Yue, J.-K. Hao, F. Glover and Z. Lü, Iterated dynamic neighborhood search for packing equal circles on a sphere, Computers & Operations Research 151 (2023), 106121. (doi)
Links
Similar tables
Best known packings of equal circles in a circle —   maximises separation in a disk rather than on a sphere
Best known packings of equal circles in an equilateral triangle —   maximises separation in a triangular planar container
Global minimum energies of Lennard-Jones clusters —   optimises a pair-potential energy for finite point configurations rather than their minimum separation
Data properties
Entries are of type: real number
How well the digits are known: heuristic (agreement-checked)
Table is complete: no (it holds both normalisations for every $4\leq n\leq100$, a contiguous reference range of small spherical codes from the cited snapshot; larger configurations are not included)
Sources of data: [9], [10], [11]
How they were obtained:

The 27 cases with a source minimal polynomial, and the elementary cases $n=4,5,6$, are evaluated to 100 significant digits. Polynomial roots are isolated by 400 exact rational bisections after a rational derivative bound certifies uniqueness within $10^{-10}$ of the printed source cosine. The angle and chord conversions use 768-bit real ball arithmetic; the smallest measured relative accuracy is 431 bits. The exact angles for $n=5,6$ are stored as integers. For the remaining 67 configurations, the source cosine is enclosed by one unit in its twelfth decimal place and converted to ten significant digits. Every written decimal contains the whole transformed input ball. This is a source-accuracy model supported by agreement, not a bound on the global optimum.

more

All 97 configurations were independently checked from their published coordinates after radial normalisation, by computing every pairwise inner product and Euclidean distance. For $n\geq7$, the recomputed cosines differ from the source decimals by less than $10^{-12}$; the lower precision Sloane coordinates for $n=4,5,6$ agree with the exact cosines within $10^{-8}$. Known-answer controls use antipodal points, a regular tetrahedron and an octahedron. Both angle/chord conversions were checked on all 194 written values, together with closed forms for the tetrahedron, square antiprism, $n=9$, octahedron and icosahedron. The coordinate check supports the available source digits; the higher precision of algebraic rows comes from the root enclosures. These computations do not reproduce the source optimisations or their optimality proofs.