|
62 | 62 | "SymEngine.ascii_art" |
63 | 63 | ] |
64 | 64 | }, |
| 65 | + { |
| 66 | + "cell_type": "markdown", |
| 67 | + "metadata": {}, |
| 68 | + "source": [ |
| 69 | + "or create a variable" |
| 70 | + ] |
| 71 | + }, |
| 72 | + { |
| 73 | + "cell_type": "code", |
| 74 | + "execution_count": 3, |
| 75 | + "metadata": { |
| 76 | + "collapsed": false |
| 77 | + }, |
| 78 | + "outputs": [ |
| 79 | + { |
| 80 | + "data": { |
| 81 | + "text/plain": [ |
| 82 | + "#<SymEngine::Basic:0x00000001e95290>" |
| 83 | + ] |
| 84 | + }, |
| 85 | + "execution_count": 3, |
| 86 | + "metadata": {}, |
| 87 | + "output_type": "execute_result" |
| 88 | + } |
| 89 | + ], |
| 90 | + "source": [ |
| 91 | + "basic = SymEngine::Basic.new" |
| 92 | + ] |
| 93 | + }, |
65 | 94 | { |
66 | 95 | "cell_type": "markdown", |
67 | 96 | "metadata": {}, |
|
585 | 614 | "source": [ |
586 | 615 | "k.expand.to_s" |
587 | 616 | ] |
588 | | - }, |
589 | | - { |
590 | | - "cell_type": "markdown", |
591 | | - "metadata": {}, |
592 | | - "source": [ |
593 | | - "## SymEngine::RealDouble\n", |
594 | | - "\n", |
595 | | - "SymEngine::RealDouble can be constructed by converting any ruby Float into SymEngine" |
596 | | - ] |
597 | | - }, |
598 | | - { |
599 | | - "cell_type": "code", |
600 | | - "execution_count": null, |
601 | | - "metadata": { |
602 | | - "collapsed": true |
603 | | - }, |
604 | | - "outputs": [], |
605 | | - "source": [ |
606 | | - "d = SymEngine(1.2)" |
607 | | - ] |
608 | | - }, |
609 | | - { |
610 | | - "cell_type": "markdown", |
611 | | - "metadata": {}, |
612 | | - "source": [ |
613 | | - "## SymEngine::ComplexDouble\n", |
614 | | - "SymEngine::ComplexDouble can be constructed by converting any ruby Complex into SymEngine" |
615 | | - ] |
616 | | - }, |
617 | | - { |
618 | | - "cell_type": "code", |
619 | | - "execution_count": null, |
620 | | - "metadata": { |
621 | | - "collapsed": true |
622 | | - }, |
623 | | - "outputs": [], |
624 | | - "source": [ |
625 | | - "c = SymEngine(Complex(2.3, 3.2))" |
626 | | - ] |
627 | | - }, |
628 | | - { |
629 | | - "cell_type": "markdown", |
630 | | - "metadata": {}, |
631 | | - "source": [ |
632 | | - "## SymEngine::RealMPFR\n", |
633 | | - "SymEngine::RealMPFR can be constructed either by converting any Ruby BigDecimal into SymEngine, or using the constructor to express any real number with a given number of bits of precision" |
634 | | - ] |
635 | | - }, |
636 | | - { |
637 | | - "cell_type": "code", |
638 | | - "execution_count": null, |
639 | | - "metadata": { |
640 | | - "collapsed": true |
641 | | - }, |
642 | | - "outputs": [], |
643 | | - "source": [ |
644 | | - "require 'bigdecimal'\n", |
645 | | - "r1 = SymEngine(BigDecimal(\"12.3\"))\n", |
646 | | - "r2 = SymEngine::RealMPFR.new(12.3, 200)" |
647 | | - ] |
648 | | - }, |
649 | | - { |
650 | | - "cell_type": "markdown", |
651 | | - "metadata": {}, |
652 | | - "source": [ |
653 | | - "## SymEngine::ComplexMPC\n", |
654 | | - "SymEngine::RealMPC can be constructed by arithmatic operations of any SymEngine::RealMPFR objects, as shown below." |
655 | | - ] |
656 | | - }, |
657 | | - { |
658 | | - "cell_type": "code", |
659 | | - "execution_count": null, |
660 | | - "metadata": { |
661 | | - "collapsed": true |
662 | | - }, |
663 | | - "outputs": [], |
664 | | - "source": [ |
665 | | - "i = SymEngine:I\n", |
666 | | - "c1 = r1 + i * r2" |
667 | | - ] |
668 | | - }, |
669 | | - { |
670 | | - "cell_type": "markdown", |
671 | | - "metadata": {}, |
672 | | - "source": [ |
673 | | - "## SymEngine::Constant - SymEngine Constants\n", |
674 | | - "\n", |
675 | | - "SymEngine offers the following constants" |
676 | | - ] |
677 | | - }, |
678 | | - { |
679 | | - "cell_type": "code", |
680 | | - "execution_count": null, |
681 | | - "metadata": { |
682 | | - "collapsed": true |
683 | | - }, |
684 | | - "outputs": [], |
685 | | - "source": [ |
686 | | - "i = SymEngine::I\n", |
687 | | - "e = SymEngine::E\n", |
688 | | - "eg = SymEngine::EULER_GAMMA\n", |
689 | | - "pi = SymEngine::PI\n", |
690 | | - "\n", |
691 | | - "i.inspect + e.inspect + eg.inspect + pi.inspect" |
692 | | - ] |
693 | | - }, |
694 | | - { |
695 | | - "cell_type": "markdown", |
696 | | - "metadata": {}, |
697 | | - "source": [ |
698 | | - "## SymEngine::TrigFunction\n", |
699 | | - "\n", |
700 | | - "sin, cos, tan, cosec, sec, cot, asin, acos, atan, acosec, asec, acot are available as shown below:" |
701 | | - ] |
702 | | - }, |
703 | | - { |
704 | | - "cell_type": "code", |
705 | | - "execution_count": null, |
706 | | - "metadata": { |
707 | | - "collapsed": true |
708 | | - }, |
709 | | - "outputs": [], |
710 | | - "source": [ |
711 | | - "i1 = SymEngine::sin(pi)\n", |
712 | | - "i2 = SymEngine::cos(0.2)\n", |
713 | | - "i3 = SymEngine::tan(pi/4)\n", |
714 | | - "i4 = SymEngine::csc(pi/2)\n", |
715 | | - "i5 = SymEngine::sec(0.2)\n", |
716 | | - "i6 = SymEngine::cot(pi/4)\n", |
717 | | - "\n", |
718 | | - "print \"sin(pi): \", i1,\"\\ncos(0.2): \", i2, \"\\ntan(pi/4): \", i3, \"\\ncsc(pi/2): \", i4, \"\\nsec(0.2): \", i5,\"\\ncot(pi/4): \", i6, \"\\n\"" |
719 | | - ] |
720 | | - }, |
721 | | - { |
722 | | - "cell_type": "code", |
723 | | - "execution_count": null, |
724 | | - "metadata": { |
725 | | - "collapsed": true |
726 | | - }, |
727 | | - "outputs": [], |
728 | | - "source": [ |
729 | | - "i1 = SymEngine::asin(1)\n", |
730 | | - "i2 = SymEngine::acos(0)\n", |
731 | | - "i3 = SymEngine::atan(5)\n", |
732 | | - "i4 = SymEngine::acsc(1)\n", |
733 | | - "i5 = SymEngine::asec(0.2)\n", |
734 | | - "i6 = SymEngine::acot(0.5)\n", |
735 | | - "\n", |
736 | | - "print \"i1: \", i1,\"\\ni2: \", i2, \"\\ni3: \", i3, \"\\ni4: \", i4, \"\\ni5: \", i5,\"\\ni6: \", i6, \"\\n\"" |
737 | | - ] |
738 | | - }, |
739 | | - { |
740 | | - "cell_type": "markdown", |
741 | | - "metadata": {}, |
742 | | - "source": [ |
743 | | - "## SymEngine::HyperbolicFunction\n", |
744 | | - "sinh, cosh, tanh, cosech, sech, coth, asinh, acosh, atanh, acosech, asech, acoth are available as shown below:" |
745 | | - ] |
746 | | - }, |
747 | | - { |
748 | | - "cell_type": "code", |
749 | | - "execution_count": null, |
750 | | - "metadata": { |
751 | | - "collapsed": true |
752 | | - }, |
753 | | - "outputs": [], |
754 | | - "source": [ |
755 | | - "i1 = SymEngine::sinh(pi)\n", |
756 | | - "i2 = SymEngine::cosh(0.2)\n", |
757 | | - "i3 = SymEngine::tanh(pi/4)\n", |
758 | | - "i4 = SymEngine::csch(pi/2)\n", |
759 | | - "i5 = SymEngine::sech(0.2)\n", |
760 | | - "i6 = SymEngine::coth(pi/4)\n", |
761 | | - "\n", |
762 | | - "print \"sinh(pi): \", i1,\"\\ncosh(0.2): \", i2, \"\\ntanh(pi/4): \", i3, \"\\ncsch(pi/2): \", i4, \"\\nsech(0.2): \", i5,\"\\ncoth(pi/4): \", i6, \"\\n\"" |
763 | | - ] |
764 | | - }, |
765 | | - { |
766 | | - "cell_type": "code", |
767 | | - "execution_count": null, |
768 | | - "metadata": { |
769 | | - "collapsed": true |
770 | | - }, |
771 | | - "outputs": [], |
772 | | - "source": [ |
773 | | - "i1 = SymEngine::asinh(1)\n", |
774 | | - "i2 = SymEngine::acosh(0)\n", |
775 | | - "i3 = SymEngine::atanh(5)\n", |
776 | | - "i4 = SymEngine::acsch(1)\n", |
777 | | - "i5 = SymEngine::asech(0.2)\n", |
778 | | - "i6 = SymEngine::acoth(0.5)\n", |
779 | | - "\n", |
780 | | - "print \"i1: \", i1,\"\\ni2: \", i2, \"\\ni3: \", i3, \"\\ni4: \", i4, \"\\ni5: \", i5,\"\\ni6: \", i6, \"\\n\"" |
781 | | - ] |
782 | | - }, |
783 | | - { |
784 | | - "cell_type": "markdown", |
785 | | - "metadata": {}, |
786 | | - "source": [ |
787 | | - "## NTheory Functions\n", |
788 | | - "\n", |
789 | | - "Several Number Theory functions are available in SymEngine.\n", |
790 | | - "\n", |
791 | | - "GCD and LCM" |
792 | | - ] |
793 | | - }, |
794 | | - { |
795 | | - "cell_type": "code", |
796 | | - "execution_count": null, |
797 | | - "metadata": { |
798 | | - "collapsed": true |
799 | | - }, |
800 | | - "outputs": [], |
801 | | - "source": [ |
802 | | - "gcd = SymEngine::gcd(45, 40)\n", |
803 | | - "lcm = SymEngine::lcm(45, 40)\n", |
804 | | - "\n", |
805 | | - "print \"for 45 and 40,\\ngcd is: \", gcd, \"\\nlcm is: \",lcm, \"\\n\"" |
806 | | - ] |
807 | | - }, |
808 | | - { |
809 | | - "cell_type": "markdown", |
810 | | - "metadata": {}, |
811 | | - "source": [ |
812 | | - "Next Prime" |
813 | | - ] |
814 | | - }, |
815 | | - { |
816 | | - "cell_type": "code", |
817 | | - "execution_count": null, |
818 | | - "metadata": { |
819 | | - "collapsed": true |
820 | | - }, |
821 | | - "outputs": [], |
822 | | - "source": [ |
823 | | - "np = SymEngine::nextprime(5)" |
824 | | - ] |
825 | | - }, |
826 | | - { |
827 | | - "cell_type": "markdown", |
828 | | - "metadata": {}, |
829 | | - "source": [ |
830 | | - "Quotient" |
831 | | - ] |
832 | | - }, |
833 | | - { |
834 | | - "cell_type": "code", |
835 | | - "execution_count": null, |
836 | | - "metadata": { |
837 | | - "collapsed": true |
838 | | - }, |
839 | | - "outputs": [], |
840 | | - "source": [ |
841 | | - "q = SymEngine::quotient(5, 2)" |
842 | | - ] |
843 | | - }, |
844 | | - { |
845 | | - "cell_type": "markdown", |
846 | | - "metadata": {}, |
847 | | - "source": [ |
848 | | - "Lucas and Fibonacci series" |
849 | | - ] |
850 | | - }, |
851 | | - { |
852 | | - "cell_type": "code", |
853 | | - "execution_count": null, |
854 | | - "metadata": { |
855 | | - "collapsed": true |
856 | | - }, |
857 | | - "outputs": [], |
858 | | - "source": [ |
859 | | - "l = SymEngine::lucas(3)\n", |
860 | | - "f = SymEngine::fibonacci(3)\n", |
861 | | - "\n", |
862 | | - "p l, f" |
863 | | - ] |
864 | | - }, |
865 | | - { |
866 | | - "cell_type": "markdown", |
867 | | - "metadata": {}, |
868 | | - "source": [ |
869 | | - "Binomials" |
870 | | - ] |
871 | | - }, |
872 | | - { |
873 | | - "cell_type": "code", |
874 | | - "execution_count": null, |
875 | | - "metadata": { |
876 | | - "collapsed": true |
877 | | - }, |
878 | | - "outputs": [], |
879 | | - "source": [ |
880 | | - "b = SymEngine::binomial(5, 2)" |
881 | | - ] |
882 | 617 | } |
883 | 618 | ], |
884 | 619 | "metadata": { |
885 | 620 | "kernelspec": { |
886 | | - "display_name": "Ruby 2.3.0", |
| 621 | + "display_name": "Ruby 2.2.0", |
887 | 622 | "language": "ruby", |
888 | 623 | "name": "ruby" |
889 | 624 | }, |
|
0 commit comments