NEST  2.6.0,not_revisioned_source_dir@0
slimath.h
Go to the documentation of this file.
1 /*
2  * slimath.h
3  *
4  * This file is part of NEST.
5  *
6  * Copyright (C) 2004 The NEST Initiative
7  *
8  * NEST is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * NEST is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with NEST. If not, see <http://www.gnu.org/licenses/>.
20  *
21  */
22 
23 #ifndef SLIMATH_H
24 #define SLIMATH_H
25 /*
26  SLI's math operators
27 */
28 
29 #include "interpret.h"
30 
32 
34 {
35 public:
36 
38  void execute(SLIInterpreter *) const;
39 };
40 
42 {
43 public:
45  void execute(SLIInterpreter *) const;
46 };
47 
49 {
50 public:
52  void execute(SLIInterpreter *) const;
53 };
54 
56 {
57 public:
59  void execute(SLIInterpreter *) const;
60 };
61 //---------------------------------------
62 
64 {
65 public:
67  void execute(SLIInterpreter *) const;
68 };
69 
71 {
72 public:
73 
75 
76  void execute(SLIInterpreter *) const;
77 };
78 
80 {
81 public:
82 
84 
85  void execute(SLIInterpreter *) const;
86 };
87 
89 {
90 public:
91 
93 
94  void execute(SLIInterpreter *) const;
95 };
96 //---------------------------------------
97 
99 {
100 public:
101 
103 
104  void execute(SLIInterpreter *) const;
105 };
106 
108 {
109 public:
110 
112 
113  void execute(SLIInterpreter *) const;
114 };
115 
117 {
118 public:
119 
121 
122  void execute(SLIInterpreter *) const;
123 };
124 
126 {
127 public:
128 
130 
131  void execute(SLIInterpreter *) const;
132 };
133 //---------------------------------------
134 
136 {
137 public:
138 
140 
141  void execute(SLIInterpreter *) const;
142 };
143 
145 {
146 public:
147 
149 
150  void execute(SLIInterpreter *) const;
151 };
152 
154 {
155 public:
156 
158 
159  void execute(SLIInterpreter *) const;
160 };
162 {
163 public:
164 
166 
167  void execute(SLIInterpreter *) const;
168 };
169 
170 //--------------------------------------
171 
173 {
174 public:
175 
177 
178  void execute(SLIInterpreter *) const;
179 };
180 //--------------------------------------
181 
182 
184 {
185 public:
186 
188 
189  void execute(SLIInterpreter *) const;
190 };
191 
193 {
194 public:
195 
197 
198  void execute(SLIInterpreter *) const;
199 };
200 
202 {
203 public:
204 
206 
207  void execute(SLIInterpreter *) const;
208 };
209 
211 {
212 public:
213 
215 
216  void execute(SLIInterpreter *) const;
217 };
218 
220 {
221 public:
222 
224 
225  void execute(SLIInterpreter *) const;
226 };
227 
229 {
230 public:
232 
233  void execute(SLIInterpreter *) const;
234 };
235 
237 {
238 public:
239 
241 
242  void execute(SLIInterpreter *) const;
243 };
244 
246 {
247 public:
248 
250 
251  void execute(SLIInterpreter *) const;
252 };
253 
255 {
256 public:
257 
259 
260  void execute(SLIInterpreter *) const;
261 };
262 
264 {
265 public:
266 
268 
269  void execute(SLIInterpreter *) const;
270 };
271 
273 {
274 public:
275 
277 
278  void execute(SLIInterpreter *) const;
279 };
280 
282 {
283 public:
284 
286 
287  void execute(SLIInterpreter *) const;
288 };
289 
291 {
292 public:
293 
295 
296  void execute(SLIInterpreter *) const;
297 };
298 
300 {
301 public:
302 
304 
305  void execute(SLIInterpreter *) const;
306 };
307 
308 
310 {
311 public:
312 
314 
315  void execute(SLIInterpreter *) const;
316 };
317 
318 
319 //--------------------------------------
321 {
322 public:
323 
325 
326  void execute(SLIInterpreter *) const;
327 };
329 {
330 public:
331 
333 
334  void execute(SLIInterpreter *) const;
335 };
336 
337 //--------------------------------------
338 
340 {
341 public:
342 
344 
345  void execute(SLIInterpreter *) const;
346 };
348 {
349 public:
350 
352 
353  void execute(SLIInterpreter *) const;
354 };
355 
357 {
358 public:
359 
361 
362  void execute(SLIInterpreter *) const;
363 };
364 
365 //-------------------------
366 
367 class EqFunction: public SLIFunction
368 {
369 public:
371 
372  void execute(SLIInterpreter *) const;
373 };
374 
376 {
377 public:
378 
380 
381  void execute(SLIInterpreter *) const;
382 };
383 
385 {
386 public:
387 
389 
390  void execute(SLIInterpreter *) const;
391 };
392 
393 class OrFunction: public SLIFunction
394 {
395 public:
396 
398 
399  void execute(SLIInterpreter *) const;
400 };
401 
403 {
404 public:
405 
407 
408  void execute(SLIInterpreter *) const;
409 };
410 
412 {
413 public:
414 
416 
417  void execute(SLIInterpreter *) const;
418 };
419 
421 {
422 public:
423 
425 
426  void execute(SLIInterpreter *) const;
427 };
428 
430 {
431 public:
432 
434 
435  void execute(SLIInterpreter *) const;
436 };
437 
439 {
440 public:
441 
443 
444  void execute(SLIInterpreter *) const;
445 };
446 
448 {
449 public:
450 
452 
453  void execute(SLIInterpreter *) const;
454 };
455 
457 {
458 public:
459 
461 
462  void execute(SLIInterpreter *) const;
463 };
464 
466 {
467 public:
468 
470 
471  void execute(SLIInterpreter *) const;
472 };
473 
475 {
476 public:
477 
479 
480  void execute(SLIInterpreter *) const;
481 };
482 
484 {
485 public:
486 
488 
489  void execute(SLIInterpreter *) const;
490 };
491 
493 {
494 public:
495 
497 
498  void execute(SLIInterpreter *) const;
499 };
500 
502 {
503 public:
504 
506 
507  void execute(SLIInterpreter *) const;
508 };
509 
511 {
512 public:
513 
515 
516  void execute(SLIInterpreter *) const;
517 };
518 
519 
520 //-------------------------
521 
523 {
524 public:
525 
527 
528  void execute(SLIInterpreter *) const;
529 };
530 
532 {
533 public:
534 
536 
537  void execute(SLIInterpreter *) const;
538 };
539 
541 {
542 public:
543 
545 
546  void execute(SLIInterpreter *) const;
547 };
548 
550 {
551 public:
552 
554 
555  void execute(SLIInterpreter *) const;
556 };
557 
559 {
560 public:
561 
563 
564  void execute(SLIInterpreter *) const;
565 };
566 
568 {
569 public:
570 
572 
573  void execute(SLIInterpreter *) const;
574 };
575 
577 {
578 public:
580 
581  void execute(SLIInterpreter *) const;
582 };
583 
585 {
586 public:
587 
589 
590  void execute(SLIInterpreter *) const;
591 };
592 
594 {
595 public:
596 
598 
599  void execute(SLIInterpreter *) const;
600 };
601 
603 {
604 public:
605 
607 
608  void execute(SLIInterpreter *) const;
609 };
610 
612 {
613 public:
614 
616 
617  void execute(SLIInterpreter *) const;
618 };
619 
621 {
622 public:
623 
625 
626  void execute(SLIInterpreter *) const;
627 };
628 
630 {
631 public:
632 
634 
635  void execute(SLIInterpreter *) const;
636 };
637 
639 {
640 public:
641 
643 
644  void execute(SLIInterpreter *) const;
645 };
646 
648 {
649 public:
650 
652 
653  void execute(SLIInterpreter *) const;
654 };
655 
657 {
658 public:
659 
661 
662  void execute(SLIInterpreter *) const;
663 };
664 
666 {
667 public:
668 
670  void execute(SLIInterpreter *) const;
671 };
672 
674 {
675 public:
676 
678 
679  void execute(SLIInterpreter *) const;
680 };
681 
683 {
684 public:
685 
687 
688  void execute(SLIInterpreter *) const;
689 };
690 
691 
693 {
694 public:
695 
697 
698  void execute(SLIInterpreter *) const;
699 };
701 {
702 public:
703 
705 
706  void execute(SLIInterpreter *) const;
707 };
709 {
710 public:
711 
713 
714  void execute(SLIInterpreter *) const;
715 };
717 {
718 public:
719 
721 
722  void execute(SLIInterpreter *) const;
723 };
724 
725 
727 {
728 public:
729 
731 
732  void execute(SLIInterpreter *) const;
733 };
735 {
736 public:
737 
739 
740  void execute(SLIInterpreter *) const;
741 };
743 {
744 public:
745 
747 
748  void execute(SLIInterpreter *) const;
749 };
751 {
752 public:
753 
755 
756  void execute(SLIInterpreter *) const;
757 };
758 
759 #endif
760 
761 
762 
Definition: slimath.h:272
Mul_diFunction()
Definition: slimath.h:102
Definition: slimath.h:245
void execute(SLIInterpreter *) const
Definition: slimath.cc:1440
Definition: slimath.h:726
void execute(SLIInterpreter *) const
Definition: slimath.cc:750
Definition: slimath.h:734
void execute(SLIInterpreter *) const
Definition: slimath.cc:1284
void execute(SLIInterpreter *) const
Definition: slimath.cc:1235
void execute(SLIInterpreter *) const
Definition: slimath.cc:788
Definition: slimath.h:540
Definition: slimath.h:522
Leq_ddFunction()
Definition: slimath.h:514
AndFunction()
Definition: slimath.h:388
Definition: slimath.h:602
void execute(SLIInterpreter *) const
Definition: slimath.cc:1479
void execute(SLIInterpreter *) const
Definition: slimath.cc:202
Add_ddFunction()
Definition: slimath.h:58
Add_diFunction()
Definition: slimath.h:37
void execute(SLIInterpreter *) const
Definition: slimath.cc:426
Definition: slimath.h:692
Not_iFunction()
Definition: slimath.h:442
Definition: slimath.h:375
void execute(SLIInterpreter *) const
Definition: slimath.cc:357
void execute(SLIInterpreter *) const
Definition: slimath.cc:1268
Frexp_dFunction()
Definition: slimath.h:294
Definition: slimath.h:700
Definition: slimath.h:98
Definition: slimath.h:153
void execute(SLIInterpreter *) const
Definition: slimath.cc:964
Pow_ddFunction()
Definition: slimath.h:267
void execute(SLIInterpreter *) const
Definition: slimath.cc:888
Definition: slimath.h:144
void execute(SLIInterpreter *) const
Definition: slimath.cc:1012
Add_idFunction()
Definition: slimath.h:51
Min_d_dFunction()
Definition: slimath.h:754
Leq_iiFunction()
Definition: slimath.h:487
Definition: slimath.h:402
OrFunction()
Definition: slimath.h:397
Geq_idFunction()
Definition: slimath.h:460
void execute(SLIInterpreter *) const
Definition: slimath.cc:901
Or_iiFunction()
Definition: slimath.h:415
Max_d_iFunction()
Definition: slimath.h:712
Definition: slimath.h:501
Definition: slimath.h:558
Definition: slimath.h:510
void execute(SLIInterpreter *) const
Definition: slimath.cc:445
Definition: slimath.h:125
void execute(SLIInterpreter *) const
Definition: slimath.cc:1319
void execute(SLIInterpreter *) const
Definition: slimath.cc:773
void execute(SLIInterpreter *) const
Definition: slimath.cc:468
Definition: slifunction.h:35
void execute(SLIInterpreter *) const
Definition: slimath.cc:1453
void execute(SLIInterpreter *) const
Definition: slimath.cc:1176
Neg_iFunction()
Definition: slimath.h:343
void execute(SLIInterpreter *) const
Definition: slimath.cc:1521
Definition: slimath.h:63
Definition: slimath.h:88
void execute(SLIInterpreter *) const
Definition: slimath.cc:1122
Definition: slimath.h:48
Definition: slimath.h:161
Gt_ssFunction()
Definition: slimath.h:562
Definition: slimath.h:41
Round_dFunction()
Definition: slimath.h:669
void execute(SLIInterpreter *) const
Definition: slimath.cc:1418
Definition: slimath.h:328
Definition: slimath.h:320
Definition: slimath.h:673
And_iiFunction()
Definition: slimath.h:406
void execute(SLIInterpreter *) const
Definition: slimath.cc:190
Definition: slimath.h:629
Definition: slimath.h:483
UnitStep_daFunction()
Definition: slimath.h:660
Definition: slimath.h:492
Definition: slimath.h:116
Definition: slimath.h:210
Definition: slimath.h:638
Definition: slimath.h:420
void execute(SLIInterpreter *) const
Definition: slimath.cc:851
Max_i_dFunction()
Definition: slimath.h:704
Ln_dFunction()
Definition: slimath.h:231
Definition: slimath.h:447
Mod_iiFunction()
Definition: slimath.h:176
void execute(SLIInterpreter *) const
Definition: slimath.cc:1301
Definition: slimath.h:456
IntegerFunction()
Definition: slimath.h:615
Not_bFunction()
Definition: slimath.h:433
void execute(SLIInterpreter *) const
Definition: slimath.cc:666
Definition: slimath.h:70
void execute(SLIInterpreter *) const
Definition: slimath.cc:1002
void execute(SLIInterpreter *) const
Definition: slimath.cc:609
Definition: slimath.h:107
Add_iiFunction()
Definition: slimath.h:44
Definition: slimath.h:79
void execute(SLIInterpreter *) const
Definition: slimath.cc:977
Definition: slimath.h:411
Cos_dFunction()
Definition: slimath.h:205
Definition: slimath.h:665
Definition: slimath.h:656
Definition: slimath.h:347
Modf_dFunction()
Definition: slimath.h:285
Definition: slimath.h:55
Definition: slimath.h:33
Definition: slimath.h:742
void execute(SLIInterpreter *) const
Definition: slimath.cc:266
Floor_dFunction()
Definition: slimath.h:677
Definition: slimath.h:750
Definition: slimath.h:682
Min_d_iFunction()
Definition: slimath.h:746
UnitStep_iaFunction()
Definition: slimath.h:651
Max_i_iFunction()
Definition: slimath.h:696
void execute(SLIInterpreter *) const
Definition: slimath.cc:332
Definition: slimath.h:367
Definition: slimath.h:201
void execute(SLIInterpreter *) const
Definition: slimath.cc:579
Gt_ddFunction()
Definition: slimath.h:535
Definition: slimath.h:236
Definition: slimath.h:290
Div_iiFunction()
Definition: slimath.h:148
Div_diFunction()
Definition: slimath.h:139
Definition: slimath.h:219
Definition: slimath.h:708
Definition: slimath.h:339
Definition: slimath.h:465
Mul_iiFunction()
Definition: slimath.h:111
Mul_idFunction()
Definition: slimath.h:120
Log_dFunction()
Definition: slimath.h:240
Definition: slimath.h:474
Inv_dFunction()
Definition: slimath.h:360
void execute(SLIInterpreter *) const
Definition: slimath.cc:1209
Definition: slimath.h:716
void execute(SLIInterpreter *) const
Definition: slimath.cc:1338
Dexp_iFunction()
Definition: slimath.h:313
Lt_ddFunction()
Definition: slimath.h:579
Definition: slimath.h:254
Definition: slimath.h:647
Div_idFunction()
Definition: slimath.h:157
void execute(SLIInterpreter *) const
Definition: slimath.cc:1192
Lt_idFunction()
Definition: slimath.h:588
Sub_ddFunction()
Definition: slimath.h:92
Lt_diFunction()
Definition: slimath.h:597
Mul_ddFunction()
Definition: slimath.h:129
void execute(SLIInterpreter *) const
Definition: slimath.cc:1095
UnitStep_dFunction()
Definition: slimath.h:642
void execute(SLIInterpreter *) const
Definition: slimath.cc:166
void execute(SLIInterpreter *) const
Definition: slimath.cc:300
Ldexp_diFunction()
Definition: slimath.h:303
void execute(SLIInterpreter *) const
Definition: slimath.cc:1466
Gt_diFunction()
Definition: slimath.h:553
Abs_iFunction()
Definition: slimath.h:324
XorFunction()
Definition: slimath.h:424
void execute(SLIInterpreter *) const
Definition: slimath.cc:283
void execute(SLIInterpreter *) const
Definition: slimath.cc:1547
Definition: slimath.h:309
Definition: interpret.h:69
Min_i_iFunction()
Definition: slimath.h:730
void execute(SLIInterpreter *) const
Definition: slimath.cc:153
Leq_idFunction()
Definition: slimath.h:496
Sub_iiFunction()
Definition: slimath.h:74
void execute(SLIInterpreter *) const
Definition: slimath.cc:546
void execute(SLIInterpreter *) const
Definition: slimath.cc:1251
Definition: slimath.h:192
void execute(SLIInterpreter *) const
Definition: slimath.cc:52
Lt_ssFunction()
Definition: slimath.h:606
EqFunction()
Definition: slimath.h:370
void execute(SLIInterpreter *) const
Definition: slimath.cc:726
Definition: slimath.h:183
Definition: slimath.h:299
Lt_iiFunction()
Definition: slimath.h:571
Acos_dFunction()
Definition: slimath.h:214
void execute(SLIInterpreter *) const
Definition: slimath.cc:640
void execute(SLIInterpreter *) const
Definition: slimath.cc:1534
Sqrt_dFunction()
Definition: slimath.h:258
void execute(SLIInterpreter *) const
Definition: slimath.cc:1508
Exp_dFunction()
Definition: slimath.h:223
void execute(SLIInterpreter *) const
Definition: slimath.cc:66
Sin_dFunction()
Definition: slimath.h:187
void execute(SLIInterpreter *) const
Definition: slimath.cc:78
Definition: slimath.h:384
Ceil_dFunction()
Definition: slimath.h:686
void execute(SLIInterpreter *) const
Definition: slimath.cc:141
void execute(SLIInterpreter *) const
Definition: slimath.cc:875
void execute(SLIInterpreter *) const
Definition: slimath.cc:488
void execute(SLIInterpreter *) const
Definition: slimath.cc:406
DoubleFunction()
Definition: slimath.h:624
Definition: slimath.h:172
void execute(SLIInterpreter *) const
Definition: slimath.cc:178
void execute(SLIInterpreter *) const
Definition: slimath.cc:528
Definition: slimath.h:393
Div_ddFunction()
Definition: slimath.h:165
UnitStep_iFunction()
Definition: slimath.h:633
Definition: slimath.h:584
void execute(SLIInterpreter *) const
Definition: slimath.cc:129
Sub_idFunction()
Definition: slimath.h:83
void execute(SLIInterpreter *) const
Definition: slimath.cc:698
void execute(SLIInterpreter *) const
Definition: slimath.cc:1358
void execute(SLIInterpreter *) const
Definition: slimath.cc:1160
void execute(SLIInterpreter *) const
Definition: slimath.cc:938
void execute(SLIInterpreter *) const
Definition: slimath.cc:1109
void execute(SLIInterpreter *) const
Definition: slimath.cc:1039
void execute(SLIInterpreter *) const
Definition: slimath.cc:117
void execute(SLIInterpreter *) const
Definition: slimath.cc:1429
Sqr_dFunction()
Definition: slimath.h:249
Sub_diFunction()
Definition: slimath.h:66
Gt_idFunction()
Definition: slimath.h:544
Leq_diFunction()
Definition: slimath.h:505
void execute(SLIInterpreter *) const
Definition: slimath.cc:1492
Definition: slimath.h:429
Definition: slimath.h:438
void execute(SLIInterpreter *) const
Definition: slimath.cc:914
Asin_dFunction()
Definition: slimath.h:196
void execute(SLIInterpreter *) const
Definition: slimath.cc:39
Max_d_dFunction()
Definition: slimath.h:720
Definition: slimath.h:281
Definition: slimath.h:356
Definition: slimath.h:593
Gt_iiFunction()
Definition: slimath.h:526
void execute(SLIInterpreter *) const
Definition: slimath.cc:1388
void execute(SLIInterpreter *) const
Definition: slimath.cc:239
NeqFunction()
Definition: slimath.h:379
Geq_iiFunction()
Definition: slimath.h:451
Neg_dFunction()
Definition: slimath.h:351
Definition: slimath.h:576
Definition: slimath.h:611
void execute(SLIInterpreter *) const
Definition: slimath.cc:103
void execute(SLIInterpreter *) const
Definition: slimath.cc:1145
void execute(SLIInterpreter *) const
Definition: slimath.cc:505
Pow_diFunction()
Definition: slimath.h:276
Abs_dFunction()
Definition: slimath.h:332
void execute(SLIInterpreter *) const
Definition: slimath.cc:215
Geq_diFunction()
Definition: slimath.h:469
void execute(SLIInterpreter *) const
Definition: slimath.cc:382
Definition: slimath.h:531
void execute(SLIInterpreter *) const
Definition: slimath.cc:1068
Definition: slimath.h:549
void execute(SLIInterpreter *) const
Definition: slimath.cc:825
Definition: slimath.h:620
void execute(SLIInterpreter *) const
Definition: slimath.cc:951
Min_i_dFunction()
Definition: slimath.h:738
Definition: slimath.h:135
Geq_ddFunction()
Definition: slimath.h:478
void execute(SLIInterpreter *) const
Definition: slimath.cc:90
Definition: slimath.h:228
void init_slimath(SLIInterpreter *)
Definition: slimath.cc:1662
Definition: slimath.h:263
Definition: slimath.h:567