{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "This worksheet is based on SageMath 7.4.beta2 + [branch of ticket #21286](https://trac.sagemath.org/ticket/21286)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'SageMath version 7.4.beta2, Release Date: 2016-08-26'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "version()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%display latex" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "f(x, y)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "var('x y')\n", "F = function('f')(x,y)\n", "F" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "diff(f(x, y), x)\n" ] } ], "source": [ "print(diff(F,x))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, y)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x,y)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "diff(f(x, y), x, y)\n" ] } ], "source": [ "print(diff(F,x,y))" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, y)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,y,x)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, x, x)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x,x,x)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, x, y)" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x,y,x)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, x, y)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x,x,y)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, y, y)" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x,y,y)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "g(x)" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G = function('g')(x)\n", "G" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(g(x), x)" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(G,x)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "th" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "var('th', latex_name=r'\\theta')" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "h(th)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "H = function('h')(th)\n", "H" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(h(th), th)" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(H,th)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "diff(h(th), th)\n" ] } ], "source": [ "print(diff(H,(th)))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,th)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(th, y), y)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(f(th,y),y)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[1](f)(g(th), y)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(f(g(th),y),y)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(g(th), y)*diff(g(th), th)" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(f(g(th),y),th)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "D[0](f)(g(th), y)*diff(g(th), th)\n" ] } ], "source": [ "print(diff(f(g(th),y),th))" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x)" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "F.diff(x)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(x, y), x, y)" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "F.differentiate(x,y)" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/eric/sage/beta1/local/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2869: DeprecationWarning: Substitution using function-call syntax and unnamed arguments is deprecated and will be removed from a future release of Sage; you can use named arguments instead, like EXPR(x=..., y=...)\n", "See http://trac.sagemath.org/5930 for details.\n", " exec(code_obj, self.user_global_ns, self.user_ns)\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(0, 1)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)(0,1)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(0, y)" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)(x=0,y=y)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(y, x), y)" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)(y,x)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(y, y)" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)(x=y,y=y)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "diff(f(y, x), y)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(F,x)(x=y,y=x)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(x + y, y)" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(f(x+y,y),x)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "D[0](f)(x + y, y)\n" ] } ], "source": [ "print(diff(f(x+y,y),x))" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "D[0](f)(x + y, y) + D[1](f)(x + y, y)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diff(f(x+y,y),y)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "SageMath 7.4.beta2", "language": "", "name": "sagemath" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }