⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oddweights.cpp

📁 普林斯顿开发的快速球面调和变换算法
💻 CPP
📖 第 1 页 / 共 5 页
字号:
// oddweights.cpp: implementation of the oddweights class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "oddweights.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

static const double ow4[8] =
{0.0130677244459852, 0.1238854579060207, 0.2695229693546575, 0.3784620915132186, 
 0.3784620915135136, 0.2695229693547305, 0.1238854579060396, 0.0130677244459872};

static const double ow8[16] =
{0.0016469580173477, 0.0169341816445308, 0.0432357135521227, 0.0793813894095676, 
 0.1170279554057073, 0.1529422668923013, 0.1796652878558445, 0.1945100966313875, 
 0.1945100966320044, 0.1796652878560336, 0.1529422668923990, 0.1170279554057610, 
 0.0793813894095944, 0.0432357135521349, 0.0169341816445349, 0.0016469580173482};

static const double ow16[32] =
{0.0002062930740058, 0.0021640291839523, 0.0057415678114794, 0.0111972504895041, 
 0.0178930728089408, 0.0259990600279925, 0.0347897736331906, 0.0443206791778128, 
 0.0538581883411703, 0.0633727713806255, 0.0721958552759619, 0.0802540295805748, 
 0.0870119991694323, 0.0923933475135159, 0.0960521727207131, 0.0979413816063274, 
 0.0979413816075809, 0.0960521727211216, 0.0923933475137517, 0.0870119991695906, 
 0.0802540295806897, 0.0721958552760469, 0.0633727713806883, 0.0538581883412164, 
 0.0443206791778439, 0.0347897736332128, 0.0259990600280075, 0.0178930728089499, 
 0.0111972504895093, 0.0057415678114816, 0.0021640291839533, 0.0002062930740059};

static const double ow32[64] =
{0.0000257998762313, 0.0002719963328992, 0.0007285551655023, 0.0014419143849654, 
 0.0023492196299524, 0.0034990775392484, 0.0048228709609411, 0.0063650580023922, 
 0.0080542400902157, 0.0099298000591963, 0.0119191123704765, 0.0140563265952599, 
 0.0162689596309466, 0.0185860547971697, 0.0209366261496682, 0.0233449007140944, 
 0.0257427470523766, 0.0281499721421785, 0.0305026394644358, 0.0328165981698009, 
 0.0350333990269573, 0.0371654265132021, 0.0391609283963208, 0.0410293162611077, 
 0.0427266274173210, 0.0442597612670725, 0.0455934877956728, 0.0467325973884478, 
 0.0476513580258637, 0.0483527742646833, 0.0488211762339878, 0.0490580082650788, 
 0.0490580082676000, 0.0488211762348225, 0.0483527742651796, 0.0476513580262125, 
 0.0467325973887132, 0.0455934877958839, 0.0442597612672463, 0.0427266274174657, 
 0.0410293162612303, 0.0391609283964271, 0.0371654265132945, 0.0350333990270351, 
 0.0328165981698689, 0.0305026394644934, 0.0281499721422278, 0.0257427470524194, 
 0.0233449007141283, 0.0209366261496963, 0.0185860547971938, 0.0162689596309663, 
 0.0140563265952755, 0.0119191123704894, 0.0099298000592062, 0.0080542400902239, 
 0.0063650580023980, 0.0048228709609452, 0.0034990775392512, 0.0023492196299544, 
 0.0014419143849666, 0.0007285551655031, 0.0002719963328996, 0.0000257998762314};

static const double ow64[128] =
{0.0000032253984437, 0.0000340463131158, 0.0000914113258540, 0.0001815794657534, 
 0.0002972579769116, 0.0004454616309845, 0.0006184538564501, 0.0008232297879527, 
 0.0010518793946314, 0.0013112566599011, 0.0015933553489263, 0.0019048449349610, 
 0.0022376655422937, 0.0025982788787924, 0.0029786044203960, 0.0033848806292108, 
 0.0038090361826578, 0.0042570748486767, 0.0047209633097769, 0.0052064617945353, 
 0.0057056035126863, 0.0062238982588875, 0.0067534742806377, 0.0072995856431080, 
 0.0078544841887785, 0.0084231643337913, 0.0089980300767539, 0.0095838134769448, 
 0.0101730991587936, 0.0107703551919536, 0.0113683750802881, 0.0119713622227730, 
 0.0125723468987302, 0.0131752679901405, 0.0137734199390811, 0.0143704779852115, 
 0.0149600274557836, 0.0155454814319868, 0.0161207420259307, 0.0166889621432480, 
 0.0172443856007590, 0.0177899075024394, 0.0183201371555761, 0.0188377145219606, 
 0.0193376369013747, 0.0198222919565129, 0.0202870860544883, 0.0207341574880596, 
 0.0211593412034746, 0.0215645290465210, 0.0219460023643870, 0.0223054093866584, 
 0.0226394938764397, 0.0229496631067230, 0.0232331373589767, 0.0234910853670587, 
 0.0237212160271207, 0.0239244616468889, 0.0240990297467417, 0.0242456179638030, 
 0.0243629402984804, 0.0244514610722414, 0.0245104064147662, 0.0245400082524635, 
 0.0245400082575181, 0.0245104064164491, 0.0244514610732485, 0.0243629402991958, 
 0.0242456179643576, 0.0240990297471916, 0.0239244616472670, 0.0237212160274452, 
 0.0234910853673425, 0.0232331373592268, 0.0229496631069464, 0.0226394938766414, 
 0.0223054093868395, 0.0219460023645526, 0.0215645290466719, 0.0211593412036139, 
 0.0207341574881874, 0.0202870860546083, 0.0198222919566235, 0.0193376369014777, 
 0.0188377145220570, 0.0183201371556643, 0.0177899075025212, 0.0172443856008336, 
 0.0166889621433190, 0.0161207420259947, 0.0155454814320465, 0.0149600274558390, 
 0.0143704779852628, 0.0137734199391291, 0.0131752679901853, 0.0125723468987703, 
 0.0119713622228087, 0.0113683750803208, 0.0107703551919828, 0.0101730991588207, 
 0.0095838134769692, 0.0089980300767763, 0.0084231643338125, 0.0078544841887972, 
 0.0072995856431249, 0.0067534742806529, 0.0062238982589012, 0.0057056035126984, 
 0.0052064617945460, 0.0047209633097861, 0.0042570748486851, 0.0038090361826649, 
 0.0033848806292171, 0.0029786044204013, 0.0025982788787973, 0.0022376655422979, 
 0.0019048449349640, 0.0015933553489289, 0.0013112566599029, 0.0010518793946331, 
 0.0008232297879540, 0.0006184538564511, 0.0004454616309852, 0.0002972579769120, 
 0.0001815794657536, 0.0000914113258541, 0.0000340463131159, 0.0000032253984437};

static const double ow128[256] =
{0.0000004031877411, 0.0000042572517279, 0.0000114371212962, 0.0000227394678764, 
 0.0000372706105964, 0.0000559374174465, 0.0000778003287466, 0.0001037808939654, 
 0.0001329253585440, 0.0001661559916342, 0.0002025122569627, 0.0002429127798856, 
 0.0002863931929124, 0.0003338664588291, 0.0003843660183533, 0.0004387979596864, 
 0.0004961946768772, 0.0005574545147950, 0.0006216097483909, 0.0006895502807964, 
 0.0007603090893828, 0.0008347670328544, 0.0009119585571518, 0.0009927549337468, 
 0.0010761928130954, 0.0011631333778394, 0.0012526162019960, 0.0013454919086076, 
 0.0014408037047417, 0.0015393912077987, 0.0016403019619817, 0.0017443641539806, 
 0.0018506303661590, 0.0019599169479956, 0.0020712822192443, 0.0021855303026347, 
 0.0023017259533606, 0.0024206606936965, 0.0025414064113338, 0.0026647416694145, 
 0.0027897461840940, 0.0029171852151115, 0.0030461470016833, 0.0031773831697918, 
 0.0033099911745278, 0.0034447086912688, 0.0035806430814968, 0.0037185177662876, 
 0.0038574507011619, 0.0039981507620213, 0.0041397471825670, 0.0042829340151838, 
 0.0044268524517274, 0.0045721814549507, 0.0047180748499802, 0.0048651962557715, 
 0.0050127128002511, 0.0051612725160799, 0.0053100564972084, 0.0054596969588818, 
 0.0056093896172428, 0.0057597506501033, 0.0059099910441545, 0.0060607107305658, 
 0.0062111366063786, 0.0063618521574240, 0.0065121008215768, 0.0066624494508584, 
 0.0068121586443852, 0.0069617784418220, 0.0071105872131109, 0.0072591180166316, 
 0.0074066675911598, 0.0075537518541932, 0.0076996864990270, 0.0078449701516869, 
 0.0079889380326350, 0.0081320713345467, 0.0082737253639241, 0.0084143637466193, 
 0.0085533624195640, 0.0086911673164237, 0.0088271755337647, 0.0089618151955077, 
 0.0090945050711964, 0.0092256553649445, 0.0093547070160997, 0.0094820522061123, 
 0.0096071545237771, 0.0097303880319512, 0.0098512394307129, 0.0099700645750316, 
 0.0100863737196908, 0.0102005044288344, 0.0103119909363740, 0.0104211524387798, 
 0.0105275475539465, 0.0106314770396442, 0.0107325242824967, 0.0108309715361439, 
 0.0109264273200529, 0.0110191553236244, 0.0111087895421770, 0.0111955750458730, 
 0.0112791716273089, 0.0113598056872980, 0.0114371631151296, 0.0115114515968326, 
 0.0115823833953884, 0.0116501474410987, 0.0117144826248282, 0.0117755590845228, 
 0.0118331425699827, 0.0118873843943057, 0.0119380773738240, 0.0119853539682929, 
 0.0120290342444165, 0.0120692317839818, 0.0121057940639119, 0.0121388157671288, 
 0.0121681719164085, 0.0121939382785572, 0.0122160175334249, 0.0122344665180003, 
 0.0122492156558582, 0.0122603028439109, 0.0122676863112395, 0.0122713850057145, 
 0.0122713850158343, 0.0122676863146129, 0.0122603028459330, 0.0122492156573018, 
 0.0122344665191206, 0.0122160175343388, 0.0121939382793297, 0.0121681719170756, 
 0.0121388157677166, 0.0121057940644353, 0.0120692317844549, 0.0120290342448472, 
 0.0119853539686872, 0.0119380773741870, 0.0118873843946433, 0.0118331425702960, 
 0.0117755590848147, 0.0117144826251027, 0.0116501474413569, 0.0115823833956312, 
 0.0115114515970631, 0.0114371631153478, 0.0113598056875039, 0.0112791716275054, 
 0.0111955750460593, 0.0111087895423549, 0.0110191553237950, 0.0109264273202152, 
 0.0108309715362999, 0.0107325242826444, 0.0106314770397866, 0.0105275475540827, 
 0.0104211524389098, 0.0103119909364987, 0.0102005044289547, 0.0100863737198059, 
 0.0099700645751415, 0.0098512394308186, 0.0097303880320537, 0.0096071545238753, 
 0.0094820522062073, 0.0093547070161914, 0.0092256553650329, 0.0090945050712816, 
 0.0089618151955897, 0.0088271755338436, 0.0086911673165003, 0.0085533624196358, 
 0.0084143637466897, 0.0082737253639915, 0.0081320713346119, 0.0079889380326979, 
 0.0078449701517469, 0.0076996864990841, 0.0075537518542481, 0.0074066675912135, 
 0.0072591180166831, 0.0071105872131597, 0.0069617784418702, 0.0068121586444314, 
 0.0066624494509026, 0.0065121008216191, 0.0063618521574643, 0.0062111366064170, 
 0.0060607107306023, 0.0059099910441906, 0.0057597506501376, 0.0056093896172753, 
 0.0054596969589132, 0.0053100564972380, 0.0051612725161084, 0.0050127128002786, 
 0.0048651962557974, 0.0047180748500051, 0.0045721814549745, 0.0044268524517502, 
 0.0042829340152050, 0.0041397471825873, 0.0039981507620413, 0.0038574507011804, 
 0.0037185177663058, 0.0035806430815131, 0.0034447086912847, 0.0033099911745429, 
 0.0031773831698060, 0.0030461470016963, 0.0029171852151242, 0.0027897461841059, 
 0.0026647416694257, 0.0025414064113443, 0.0024206606937063, 0.0023017259533697, 
 0.0021855303026432, 0.0020712822192526, 0.0019599169480033, 0.0018506303661660, 
 0.0017443641539874, 0.0016403019619876, 0.0015393912078041, 0.0014408037047469, 
 0.0013454919086122, 0.0012526162020005, 0.0011631333778434, 0.0010761928130990, 
 0.0009927549337503, 0.0009119585571548, 0.0008347670328573, 0.0007603090893848, 
 0.0006895502807987, 0.0006216097483927, 0.0005574545147967, 0.0004961946768788, 
 0.0004387979596878, 0.0003843660183543, 0.0003338664588302, 0.0002863931929132, 
 0.0002429127798865, 0.0002025122569633, 0.0001661559916349, 0.0001329253585443, 
 0.0001037808939658, 0.0000778003287468, 0.0000559374174468, 0.0000372706105964, 
 0.0000227394678765, 0.0000114371212961, 0.0000042572517277, 0.0000004031877411};

static const double ow256[512] =
{0.0000000503988719, 0.0000005322021795, 0.0000014299748691, 0.0000028437482766, 
 0.0000046623743494, 0.0000070001551135, 0.0000097405151956, 0.0000130001396394, 
 0.0000166609291795, 0.0000208402566660, 0.0000254193675505, 0.0000305158256204, 
 0.0000360105307871, 0.0000420210325671, 0.0000484280301854, 0.0000553489530863, 
 0.0000626643819209, 0.0000704915617133, 0.0000787110085660, 0.0000874397385525, 
 0.0000965582431600, 0.0001061832754636, 0.0001161953345785, 0.0001267108825187, 
 0.0001376104537987, 0.0001490101949509, 0.0001607907009179, 0.0001730677806754, 
 0.0001857221128717, 0.0001988691484239, 0.0002123896718106, 0.0002263987564969, 
 0.0002407773141311, 0.0002556400221397, 0.0002708679401365, 0.0002865753315395, 
 0.0003026434243346, 0.0003191860504417, 0.0003360846263478, 0.0003534525353780, 
 0.0003711714024422, 0.0003893541455001, 0.0004078826176560, 0.0004268692550174, 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -