Math Processor Unit Library

libmpu – library of arithmetic functions for integer, real, and complex numbers of increased digit capacity

16 Commits   0 Branches   2 Tags

#ifndef   __REAL_EINTERNAL_SIN_002_32MSB
#define   __REAL_EINTERNAL_SIN_002_32MSB

#if BITS_PER_EMUSHORT == 32

#define N_SIN_S256  23

static EMUSHORT _ei_sin__S_256_[N_SIN_S256][NPIR_256] =
{
/*   Sign        Exp         hgw         S i g n i f i c a n d                                                               lgw      */
/*  ==========  ==========  ==========  ==================================================================================  ==========*/
  { 0xffffffff, 0x3fffff39, 0x00000000, 0xc6d4796d, 0xb41404d9, 0x293ca37a, 0xdb2bc1c1, 0x3d442e61, 0x7c1c535e, 0x4d7108ac, 0x00000000 }, /* -3.866631218349128401523714369722823899364083754394345774297645233596E-60 */
  { 0x00000000, 0x3fffff44, 0x00000000, 0xd1e5ce06, 0xb912f4a6, 0x185bd2ec, 0x6629e2bd, 0x9222aa84, 0x485e54f7, 0x0424972d, 0x00000000 }, /*  8.359657203657524369742026755915980368851732851034579001921445588550E-57 */
  { 0xffffffff, 0x3fffff4f, 0x00000000, 0xcaeda292, 0xbee524a8, 0x64442695, 0x4da3ca14, 0xeefe58b2, 0x60bbf3f6, 0x7469a597, 0x00000000 }, /* -1.655210867741695003021622932539869783835258346287360370533669881235E-53 */
  { 0x00000000, 0x3fffff5a, 0x00000000, 0xb2f30e1c, 0xe7cb401e, 0x12a26445, 0xc5fe2668, 0xf063f2c6, 0x41c6b4d0, 0xb54e0795, 0x00000000 }, /*  2.989310827141329248786027842736189775608429265800926485280258760830E-50 */
  { 0xffffffff, 0x3fffff65, 0x00000000, 0x8f4ca24d, 0x25d66f01, 0xa359e416, 0x69d2fb53, 0x3f055d8e, 0x3fa8f959, 0x25730ada, 0x00000000 }, /* -4.902469756513543398230532753394815193165555357275465262199618583195E-47 */
  { 0x00000000, 0x3fffff6f, 0x00000000, 0xcf6468e4, 0xa742d7a8, 0x62890f72, 0x9fff526d, 0xb8d7b217, 0x219dd5b0, 0x89cd576a, 0x00000000 }, /*  7.265460179153071316427616386921849373585682253931770547195279244954E-44 */
  { 0xffffffff, 0x3fffff7a, 0x00000000, 0x86e2ce38, 0xb6c8f941, 0x9e3fa707, 0xe59c964c, 0x29cda34a, 0x5e532b34, 0xf83f7f71, 0x00000000 }, /* -9.677592958631890992089816012062012001918636316280104285001517079031E-41 */
  { 0x00000000, 0x3fffff84, 0x00000000, 0x9cc092a6, 0xe86a8da9, 0xc166f53c, 0x757793ed, 0xd2ca7b52, 0x391ac03f, 0x1452f32b, 0x00000000 }, /*  1.151633562077195028058688084943511482445360696289616205616007303614E-37 */
  { 0xffffffff, 0x3fffff8e, 0x00000000, 0xa1a6973c, 0x1fade217, 0x0f7237d3, 0x600f952c, 0x777a6292, 0x9ce10264, 0x94ca6d08, 0x00000000 }, /* -1.216125041553517949629974685692309137537897432659897903119658708025E-34 */
  { 0x00000000, 0x3fffff98, 0x00000000, 0x92cfcc5a, 0x1ac56bd5, 0xf1873bb3, 0x78d98c40, 0x49c2be13, 0x16e364a3, 0xeda234c4, 0x00000000 }, /*  1.130996288644771693155876457693857903377574814146839281103748434188E-31 */
  { 0xffffffff, 0x3fffffa1, 0x00000000, 0xe8d58e16, 0xe6751905, 0x4d0c78ae, 0xa13b9a4e, 0x7015eac1, 0x9807f27a, 0x97e1f7ba, 0x00000000 }, /* -9.183689863795546148425716836473913397808573247650178970892355618005E-29 */
  { 0x00000000, 0x3fffffab, 0x00000000, 0x9f9e66e8, 0xb2fd46a7, 0x22520cbb, 0xb7885c47, 0xa8a79f65, 0x30b4a3b5, 0x6eb2f41c, 0x00000000 }, /*  6.446950284384473396194853219204687205227768481548553205371440466587E-26 */
  { 0xffffffff, 0x3fffffb4, 0x00000000, 0xbb0da098, 0xb1c0cecb, 0xdc3826eb, 0xfb13cc26, 0xb7f82f39, 0x523b9356, 0x434dd69c, 0x00000000 }, /* -3.868170170630684037716911931522812323179342657443375571014376312069E-23 */
  { 0x00000000, 0x3fffffbd, 0x00000000, 0xb8dc77b6, 0xe7ab8c5f, 0x78a37e77, 0x372290c2, 0x43d05585, 0x2b2d9cad, 0x7b1b4bb6, 0x00000000 }, /*  1.957294106339126123084757437350543035528747391716657194182290590886E-20 */
  { 0xffffffff, 0x3fffffc6, 0x00000000, 0x97a4da34, 0x0a0ab926, 0x50f61dbd, 0xcb3a5abf, 0x5ba0d031, 0x435c5acd, 0xab5c0870, 0x00000000 }, /* -8.220635246624329716955981236872280749220738991826098719012183925118E-18 */
  { 0x00000000, 0x3fffffce, 0x00000000, 0xca963b81, 0x856a5359, 0x3028cbbb, 0x8d7ff53b, 0xa468d621, 0xcf0772ba, 0x99a9d59a, 0x00000000 }, /*  2.811457254345520763198945583010320016233492735204516639779215529707E-15 */
  { 0xffffffff, 0x3fffffd6, 0x00000000, 0xd73f9f39, 0x9dc0f88e, 0xc32b5877, 0x4657f48f, 0x5eaf6383, 0xed943c15, 0x4abc22ed, 0x00000000 }, /* -7.647163731819816475901131985788070444155100239756324412422210178200E-13 */
  { 0x00000000, 0x3fffffde, 0x00000000, 0xb092309d, 0x43684be5, 0x1c198e91, 0xd7b4269d, 0x9babdfa2, 0x38e3995b, 0xf1ad6637, 0x00000000 }, /*  1.605904383682161459939237717015494793272571050348828126615518013418E-10 */
  { 0xffffffff, 0x3fffffe5, 0x00000000, 0xd7322b3f, 0xaa271c7f, 0x3a3f25c1, 0xbee38f10, 0x15b9788d, 0xb55562c8, 0x78087227, 0x00000000 }, /* -2.505210838544171877505210838544171877505210838544171877505210832267E-8  */
  { 0x00000000, 0x3fffffec, 0x00000000, 0xb8ef1d2a, 0xb6399c7d, 0x560e4472, 0x800b8ef1, 0xd2ab6399, 0xc7d560e4, 0x47246e72, 0x00000000 }, /*  2.755731922398589065255731922398589065255731922398589065255731889281E-6  */
  { 0xffffffff, 0x3ffffff2, 0x00000000, 0xd00d00d0, 0x0d00d00d, 0x00d00d00, 0xd00d00d0, 0x0d00d00d, 0x00d00d00, 0xd00d00d0, 0x00000000 }, /* -1.984126984126984126984126984126984126984126984126984126984126984127E-4  */
  { 0x00000000, 0x3ffffff8, 0x00000000, 0x88888888, 0x88888888, 0x88888888, 0x88888888, 0x88888888, 0x88888888, 0x88888889, 0x00000000 }, /*  8.333333333333333333333333333333333333333333333333333333333333333334E-3  */
  { 0xffffffff, 0x3ffffffc, 0x00000000, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0xaaaaaaaa, 0x00000000 }  /* -1.666666666666666666666666666666666666666666666666666666666666666667E-1  */
};

#else  /* BITS_PER_EMUSHORT != 32 */
#error ei_sin_002_emu32msb.dfn: ERROR: Failed size of EMUSHORT data type.
#endif /* BITS_PER_EMUSHORT == 32 */

#endif /* __REAL_EINTERNAL_SIN_002_32MSB */