Files
multiprecision/example/representations/dirichlet_l.cpp

157 lines
8.2 KiB
C++

#include <boost/multiprecision/mpfr.hpp>
#include "analyze.hpp"
int main()
{
using boost::multiprecision::mpfr_float;
mpfr_float::default_precision(900);
using Real = mpfr_float;
// See: Mathematical Constants II, Section 1.13 by Steven Finch.
// Mathematica code: N[DirichletL[5, 3, 3], 1000]
Real L53 {
"0.85482476664854301023569008353813769713839646493700528273070249938112\
3833412689428128420956718709787428514052771595718349505229519170836211\
0265215997608202788987421006122517302151023228314451262775716209021353\
0330103464538993007686744724563146241599644743502492906957776462953182\
9667841632135988402566499417190069150908562376936330929748257040245694\
0947636595746622500581557129589490454239050805441470697914692697461925\
5354856511779539292609535748785502504575456157533565495931814259664978\
5624266800940770031423101453452565610482192953087267421460174314030751\
3137341326100712002598205983618871129855306286794197785385570173753286\
7373383080418131055820547604575044484604288354333927233062704861657761\
1775573273825812512656536391973058944408433714228182173403526502740377\
8019790317047796978242086364457235552140447881646673112125614034723521\
9461836783049496989354309630355462809269796478766558651443420889056879\
0653313860886540271978377580376324147334672995755120702038915803888794\
683762686965986515690660620"
};
analyze(L53, "L₅(3)");
// L_{12}(3) in Finch.
// Mathematica: N[DirichletL[12, 4, 3], 1005]
Real L12_3 {
"0.99004001943815994979181677686330405085688506765723614555366070034235\
2053367181167785602231853515063548035652066831323529149037644412048770\
1205677113678637008494970351453363227396656628133639036437820155148361\
1523912758832677415308095540032679791548733465552729879160705970944068\
3047247231869026571681015297783981794857372144450793139427295178127033\
0454830070083925459978033457642066581717231626579344079820901719429178\
5471870477025279791537416710415876608877730795883237914004459636823272\
7702962909997958054571449426461001201274802599416886077744847672774823\
1616819800264336530310270114499097578897361625552822358991324229683565\
2440419849829503418120486666108009658007449371269272319830311342989368\
9256988033289311190486011752634209285757168374562341354205902592319993\
6753158050276247003042601732659629733370449380106911047741381993467677\
9120957028579431667039129344224731359897428088131915928424606912198955\
5791359848206367934669687971937601745357881392613210087688721247408254\
223667773287141511792169284"
};
analyze(L12_3, "L₁₂(3)");
// L_8(3) in Finch.
// Mathematica: N[DirichletL[8, 2, 3], 1005]
Real L8_3 {
"0.95838045456309456205166940286157781882489531793977534075750450704707\
5697484297936478252699777513729824780207090773293549634062455175352154\
1050421643741242162948370712212459530531743124610365262262393362356340\
7242366444356379467853814079517704296723654750177624408938046768924642\
1346482676922365570029978820163032037998590615390431796035219020488577\
9449673184860010370260657180847741482324488852267107290266951818939892\
1621831906571565400608971913016646314300278934890667662255118229921345\
1913684279204871333343241172881130708166426611155795048684486613113374\
6476116522838928371408593020450368620451306094378769166720567324494314\
2674178390819968326759193574012172232989305911322079647001333138576073\
5927156685235137869515986545912527991281085063341437711573616218472682\
4511230570005373326901436363158608189699371163775422771423459441606967\
0456346938840266465193980885080436207621407981512000693167558302132361\
2680561330362776119652142434648067880966579954470979005234252562531647\
121115184737492615995093421"
};
analyze(L8_3, "L₈(3)");
// L_1(1/2) in Finch.
// Mathematica: N[DirichletL[1, 1, 1/2], 1000]
Real mL1_12{
"1.4603545088095868128894991525152980124672293310125814905428860878255\
3052947450062527641937546335681951449637467986952958389234371035889426\
1819232839753762925182633358649164127891229394154101197917310448108241\
9409278816984288571768239557991845178836146554866593799168915231635216\
0424275374940796571353042261006512411854164516150879658464017534002986\
1665046125952490371908917840714940471565917574660272483532061693045430\
4928626602599081880472531306067400305323926604512813065106539466001040\
6651804549168506332768620827425551694390772400674037153616973833187775\
8235704458653739288227657621030550745336237111852621087115124502607502\
1266249685083684103157725190613240558606006778558775909756029975080223\
1586212263122265454248392384908383946490628221225677591832636143132813\
2287132579942988483462556863862335628109251185853308139377517130573507\
6952743265652282989458373709112836747583785163266961089292683262398366\
1271664820364213483392014697899141766404504399312667163511583342287816\
228024986419668541471350141"
};
analyze(mL1_12, "-L₁(1/2)");
// L_5(1/2) in Finch:
// Mathematica: N[DirichletL[5, 3, 1/2], 1005]
Real L5_12{
"0.23175094750401575588338366176087722642788669640900589796611788733984\
4380645423102142258987289424254174755735228412712566384062820509308705\
4730991946118103108581508479940151667972848978549079821793104180029987\
5808507633045155604499296665559640047056418881504273930695195039987374\
9655387134942636424847345300222199526500963040449084966940305170478514\
4300079352976507407869411645777801482430353783545520772060016388308645\
6498069592935270987227131901916252715681404294521557860420838536190356\
9730344478230686837854828680907742467760509871791222403042521404654094\
6446559685196147827251082022649629787298601994056593163378178215867996\
4027875252373167373305899703159404849664172429970895821195499062461733\
9817714751567388988924686442324629989480323417740562232558232682450499\
2053602641637595626222928012574680834901035016208006933977266581926435\
0764872720074152097782617729596469368980369023619589084185543173668370\
3533159284204843689808952892140190000233076861509907039016592954272464\
521698841993288727173249743"
};
analyze(L5_12, "L₅(1/2)");
// L_8(1/2) in Finch.
// Mathematica: N[DirichletL[8, 2, 1/2], 1005]
Real L8_12{"0.37369171291254730738158695002302311358644030221942900028304279605268\
8183524339117594442803625671304702131077889794637378068813783175365256\
4228969235084455400241311061776440622457975356457040743657088834425181\
7357991137259848085703678164473027253401522847518587289315109434094171\
7444363261741602577602717616861910421573365912961709337399657911462957\
3639450771314130299904415250314469370672907171745570365727794190109146\
2280149311202718143240016030773469890979198759091698822844939533674606\
5679802580360150255051367798332198854668044180785360951193826398082141\
8112635335305350497631910663227288800613882791338839931442299198287344\
5159976742277467250474852234990657825867106235246197561277554211855248\
3591978733700958283435834248424248779317875050506914790119476720910613\
6511229200085886977434958519320673781798168806336012820273998971315408\
4643183748615646439178661278652300905647925231942445919666472949195541\
1380255030327201982860866296098884131318085230680147320324577294354703\
029741887138677182829463823"};
analyze(L8_12, "L₈(1/2)");
// L_12(1/2) in Finch.
// Mathematica: N[DirichletL[12, 4, 1/2], 1005]
Real L12_12{"0.49855700245781543615675655398717998948832524973455721249708152216115\
7514707901812918935494759798810333046573988572719765227147980916611124\
7107730884702644877413152667518384205725484683504403135875688049833927\
8082929333181342711772854005849616100527423608525207702010076677005495\
2890704221336285435994536795081158255306386457761921529268304145568147\
3567084558172992220716198750906923718587467434855320798360613623299817\
0151673117280670418436275977492286419761757520829226040561543752207756\
1413596377205660526731601068621787084655962694840091994230126051019486\
2117946997729561254946124027945896584186401108861403515339247925948516\
4794596728588038318241537842864085928506482284962410734766005977222421\
3935905197490341443351734744472884358075773268497774668595703863116915\
6326589879274823186502460462325430321601195107062271124593229787394103\
8922259725038217623474768058873466381354423737295237504433036123093405\
6016204032005908651267255460196545055772702201044857358408719970403031\
562539200865086312925653630"};
analyze(L12_12, "L₁₂(1/2)");
}