source: Daodan/src/dSFMT/dSFMT-params4253.h@ 472

Last change on this file since 472 was 440, checked in by rossy, 15 years ago

int32rand

File size: 1.4 KB
Line 
1#ifndef DSFMT_PARAMS4253_H
2#define DSFMT_PARAMS4253_H
3
4/* #define DSFMT_N 40 */
5/* #define DSFMT_MAXDEGREE 4288 */
6#define DSFMT_POS1 19
7#define DSFMT_SL1 19
8#define DSFMT_MSK1 UINT64_C(0x0007b7fffef5feff)
9#define DSFMT_MSK2 UINT64_C(0x000ffdffeffefbfc)
10#define DSFMT_MSK32_1 0x0007b7ffU
11#define DSFMT_MSK32_2 0xfef5feffU
12#define DSFMT_MSK32_3 0x000ffdffU
13#define DSFMT_MSK32_4 0xeffefbfcU
14#define DSFMT_FIX1 UINT64_C(0x80901b5fd7a11c65)
15#define DSFMT_FIX2 UINT64_C(0x5a63ff0e7cb0ba74)
16#define DSFMT_PCV1 UINT64_C(0x1ad277be12000000)
17#define DSFMT_PCV2 UINT64_C(0x0000000000000001)
18#define DSFMT_IDSTR "dSFMT2-4253:19-19:7b7fffef5feff-ffdffeffefbfc"
19
20
21/* PARAMETERS FOR ALTIVEC */
22#if defined(__APPLE__) /* For OSX */
23 #define ALTI_SL1 (vector unsigned int)(3, 3, 3, 3)
24 #define ALTI_SL1_PERM \
25 (vector unsigned char)(2,3,4,5,6,7,30,30,10,11,12,13,14,15,0,1)
26 #define ALTI_SL1_MSK \
27 (vector unsigned int)(0xffffffffU,0xfff80000U,0xffffffffU,0xfff80000U)
28 #define ALTI_MSK (vector unsigned int)(DSFMT_MSK32_1, \
29 DSFMT_MSK32_2, DSFMT_MSK32_3, DSFMT_MSK32_4)
30#else /* For OTHER OSs(Linux?) */
31 #define ALTI_SL1 {3, 3, 3, 3}
32 #define ALTI_SL1_PERM \
33 {2,3,4,5,6,7,30,30,10,11,12,13,14,15,0,1}
34 #define ALTI_SL1_MSK \
35 {0xffffffffU,0xfff80000U,0xffffffffU,0xfff80000U}
36 #define ALTI_MSK \
37 {DSFMT_MSK32_1, DSFMT_MSK32_2, DSFMT_MSK32_3, DSFMT_MSK32_4}
38#endif
39
40#endif /* DSFMT_PARAMS4253_H */
Note: See TracBrowser for help on using the repository browser.