1
unit LUX.Random.SFMT.P1279;
3
interface //#################################################################### ■
5
uses LUX, LUX.D3, LUX.D4,
9
type //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【型】
11
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
13
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
15
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TRandom32SMT1279
17
TRandom32SMT1279 = class( TRandom32SMT )
21
function GetSFMT_MEXP :Int32s; override;
22
function GetSFMT_POS1 :Int32s; override;
23
function GetSFMT_SL1 :Int32s; override;
24
function GetSFMT_SL2 :Int32s; override;
25
function GetSFMT_SR1 :Int32s; override;
26
function GetSFMT_SR2 :Int32s; override;
27
function GetSFMT_MSK1 :Int32u; override;
28
function GetSFMT_MSK2 :Int32u; override;
29
function GetSFMT_MSK3 :Int32u; override;
30
function GetSFMT_MSK4 :Int32u; override;
31
function GetSFMT_PARITY1 :Int32u; override;
32
function GetSFMT_PARITY2 :Int32u; override;
33
function GetSFMT_PARITY3 :Int32u; override;
34
function GetSFMT_PARITY4 :Int32u; override;
35
function GetSFMT_IDSTR :String; override;
39
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TRandom64SMT1279
41
TRandom64SMT1279 = class( TRandom64SMT )
45
function GetSFMT_MEXP :Int32s; override;
46
function GetSFMT_POS1 :Int32s; override;
47
function GetSFMT_SL1 :Int32s; override;
48
function GetSFMT_SL2 :Int32s; override;
49
function GetSFMT_SR1 :Int32s; override;
50
function GetSFMT_SR2 :Int32s; override;
51
function GetSFMT_MSK1 :Int32u; override;
52
function GetSFMT_MSK2 :Int32u; override;
53
function GetSFMT_MSK3 :Int32u; override;
54
function GetSFMT_MSK4 :Int32u; override;
55
function GetSFMT_PARITY1 :Int32u; override;
56
function GetSFMT_PARITY2 :Int32u; override;
57
function GetSFMT_PARITY3 :Int32u; override;
58
function GetSFMT_PARITY4 :Int32u; override;
59
function GetSFMT_IDSTR :String; override;
63
//const //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【定数】
65
//var //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【変数】
67
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
69
implementation //############################################################### ■
73
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【レコード】
75
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【クラス】
77
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TRandom32SMT1279
79
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
81
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
83
/////////////////////////////////////////////////////////////////////// アクセス
85
function TRandom32SMT1279.GetSFMT_MEXP :Int32s;
90
function TRandom32SMT1279.GetSFMT_POS1 :Int32s;
95
function TRandom32SMT1279.GetSFMT_SL1 :Int32s;
100
function TRandom32SMT1279.GetSFMT_SL2 :Int32s;
105
function TRandom32SMT1279.GetSFMT_SR1 :Int32s;
110
function TRandom32SMT1279.GetSFMT_SR2 :Int32s;
115
function TRandom32SMT1279.GetSFMT_MSK1 :Int32u;
120
function TRandom32SMT1279.GetSFMT_MSK2 :Int32u;
125
function TRandom32SMT1279.GetSFMT_MSK3 :Int32u;
130
function TRandom32SMT1279.GetSFMT_MSK4 :Int32u;
135
function TRandom32SMT1279.GetSFMT_PARITY1 :Int32u;
140
function TRandom32SMT1279.GetSFMT_PARITY2 :Int32u;
145
function TRandom32SMT1279.GetSFMT_PARITY3 :Int32u;
150
function TRandom32SMT1279.GetSFMT_PARITY4 :Int32u;
155
function TRandom32SMT1279.GetSFMT_IDSTR :String;
157
Result := 'SFMT-1279:7-14-3-5-1:f7fefffd-7fefcfff-aff3ef3f-b5ffff7f';
160
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TRandom64SMT1279
162
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& private
164
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& protected
166
/////////////////////////////////////////////////////////////////////// アクセス
168
function TRandom64SMT1279.GetSFMT_MEXP :Int32s;
173
function TRandom64SMT1279.GetSFMT_POS1 :Int32s;
178
function TRandom64SMT1279.GetSFMT_SL1 :Int32s;
183
function TRandom64SMT1279.GetSFMT_SL2 :Int32s;
188
function TRandom64SMT1279.GetSFMT_SR1 :Int32s;
193
function TRandom64SMT1279.GetSFMT_SR2 :Int32s;
198
function TRandom64SMT1279.GetSFMT_MSK1 :Int32u;
203
function TRandom64SMT1279.GetSFMT_MSK2 :Int32u;
208
function TRandom64SMT1279.GetSFMT_MSK3 :Int32u;
213
function TRandom64SMT1279.GetSFMT_MSK4 :Int32u;
218
function TRandom64SMT1279.GetSFMT_PARITY1 :Int32u;
223
function TRandom64SMT1279.GetSFMT_PARITY2 :Int32u;
228
function TRandom64SMT1279.GetSFMT_PARITY3 :Int32u;
233
function TRandom64SMT1279.GetSFMT_PARITY4 :Int32u;
238
function TRandom64SMT1279.GetSFMT_IDSTR :String;
240
Result := 'SFMT-1279:7-14-3-5-1:f7fefffd-7fefcfff-aff3ef3f-b5ffff7f';
243
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& public
245
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$【ルーチン】
247
//############################################################################## □
249
initialization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 初期化
251
finalization //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 最終化
253
end. //######################################################################### ■