📄 oddweights.c
字号:
/*************************************************************************** ************************************************************************** Spherical Harmonic Transform Kit 2.7 Contact: Peter Kostelec geelong@cs.dartmouth.edu Copyright 1997-2003 Sean Moore, Dennis Healy, Dan Rockmore, Peter Kostelec Copyright 2004 Peter Kostelec, Dan Rockmore SpharmonicKit is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. SpharmonicKit is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Commercial use is absolutely prohibited. See the accompanying LICENSE file for details. ************************************************************************ ************************************************************************//* quadrature weights file *//** contains precomputed arrays of Legendre quadrature weight values for ODD order !!! The sin factor is already present here !!! In a nutshell, the purpose of precomputing these weights is to save a multiplication in seminaivex.c (when the order is odd). **//*** The interface function to these arrays is defined at the end of this file. It is const double *get_oddweights( int bw ) ***/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,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -