{"id":16759425,"url":"https://github.com/cleoold/calculus-toolbox","last_synced_at":"2026-01-29T17:35:32.078Z","repository":{"id":126543392,"uuid":"166145959","full_name":"cleoold/calculus-toolbox","owner":"cleoold","description":"a toolkit available to calculate various expressions in calculus.","archived":false,"fork":false,"pushed_at":"2019-08-05T13:35:36.000Z","size":61021,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-04T04:17:21.043Z","etag":null,"topics":["calculus","math","racket","scheme"],"latest_commit_sha":null,"homepage":"","language":"Scheme","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cleoold.png","metadata":{"files":{"readme":"README.html","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-01-17T02:26:17.000Z","updated_at":"2019-08-05T13:35:38.000Z","dependencies_parsed_at":"2023-06-17T04:45:55.111Z","dependency_job_id":null,"html_url":"https://github.com/cleoold/calculus-toolbox","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/cleoold/calculus-toolbox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cleoold%2Fcalculus-toolbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cleoold%2Fcalculus-toolbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cleoold%2Fcalculus-toolbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cleoold%2Fcalculus-toolbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cleoold","download_url":"https://codeload.github.com/cleoold/calculus-toolbox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cleoold%2Fcalculus-toolbox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28881982,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-29T16:41:59.663Z","status":"ssl_error","status_checked_at":"2026-01-29T16:39:39.641Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["calculus","math","racket","scheme"],"created_at":"2024-10-13T04:08:05.956Z","updated_at":"2026-01-29T17:35:32.043Z","avatar_url":"https://github.com/cleoold.png","language":"Scheme","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!DOCTYPE html\u003e\u003chtml\u003e\u003chead\u003e\n      \u003ctitle\u003eREADME\u003c/title\u003e\n      \u003cmeta charset=\"utf-8\"\u003e\n      \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n      \n      \u003clink rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/katex.min.css\"\u003e\n      \n      \n      \n      \n      \n      \n      \n      \n      \n\n      \u003cstyle\u003e \n      /**\n * prism.js Github theme based on GitHub's theme.\n * @author Sam Clarke\n */\ncode[class*=\"language-\"],\npre[class*=\"language-\"] {\n  color: #333;\n  background: none;\n  font-family: Consolas, \"Liberation Mono\", Menlo, Courier, monospace;\n  text-align: left;\n  white-space: pre;\n  word-spacing: normal;\n  word-break: normal;\n  word-wrap: normal;\n  line-height: 1.4;\n\n  -moz-tab-size: 8;\n  -o-tab-size: 8;\n  tab-size: 8;\n\n  -webkit-hyphens: none;\n  -moz-hyphens: none;\n  -ms-hyphens: none;\n  hyphens: none;\n}\n\n/* Code blocks */\npre[class*=\"language-\"] {\n  padding: .8em;\n  overflow: auto;\n  /* border: 1px solid #ddd; */\n  border-radius: 3px;\n  /* background: #fff; */\n  background: #f5f5f5;\n}\n\n/* Inline code */\n:not(pre) \u003e code[class*=\"language-\"] {\n  padding: .1em;\n  border-radius: .3em;\n  white-space: normal;\n  background: #f5f5f5;\n}\n\n.token.comment,\n.token.blockquote {\n  color: #969896;\n}\n\n.token.cdata {\n  color: #183691;\n}\n\n.token.doctype,\n.token.punctuation,\n.token.variable,\n.token.macro.property {\n  color: #333;\n}\n\n.token.operator,\n.token.important,\n.token.keyword,\n.token.rule,\n.token.builtin {\n  color: #a71d5d;\n}\n\n.token.string,\n.token.url,\n.token.regex,\n.token.attr-value {\n  color: #183691;\n}\n\n.token.property,\n.token.number,\n.token.boolean,\n.token.entity,\n.token.atrule,\n.token.constant,\n.token.symbol,\n.token.command,\n.token.code {\n  color: #0086b3;\n}\n\n.token.tag,\n.token.selector,\n.token.prolog {\n  color: #63a35c;\n}\n\n.token.function,\n.token.namespace,\n.token.pseudo-element,\n.token.class,\n.token.class-name,\n.token.pseudo-class,\n.token.id,\n.token.url-reference .token.variable,\n.token.attr-name {\n  color: #795da3;\n}\n\n.token.entity {\n  cursor: help;\n}\n\n.token.title,\n.token.title .token.punctuation {\n  font-weight: bold;\n  color: #1d3e81;\n}\n\n.token.list {\n  color: #ed6a43;\n}\n\n.token.inserted {\n  background-color: #eaffea;\n  color: #55a532;\n}\n\n.token.deleted {\n  background-color: #ffecec;\n  color: #bd2c00;\n}\n\n.token.bold {\n  font-weight: bold;\n}\n\n.token.italic {\n  font-style: italic;\n}\n\n\n/* JSON */\n.language-json .token.property {\n  color: #183691;\n}\n\n.language-markup .token.tag .token.punctuation {\n  color: #333;\n}\n\n/* CSS */\ncode.language-css,\n.language-css .token.function {\n  color: #0086b3;\n}\n\n/* YAML */\n.language-yaml .token.atrule {\n  color: #63a35c;\n}\n\ncode.language-yaml {\n  color: #183691;\n}\n\n/* Ruby */\n.language-ruby .token.function {\n  color: #333;\n}\n\n/* Markdown */\n.language-markdown .token.url {\n  color: #795da3;\n}\n\n/* Makefile */\n.language-makefile .token.symbol {\n  color: #795da3;\n}\n\n.language-makefile .token.variable {\n  color: #183691;\n}\n\n.language-makefile .token.builtin {\n  color: #0086b3;\n}\n\n/* Bash */\n.language-bash .token.keyword {\n  color: #0086b3;\n}\n\n/* highlight */\npre[data-line] {\n  position: relative;\n  padding: 1em 0 1em 3em;\n}\npre[data-line] .line-highlight-wrapper {\n  position: absolute;\n  top: 0;\n  left: 0;\n  background-color: transparent;\n  display: block;\n  width: 100%;\n}\n\npre[data-line] .line-highlight {\n  position: absolute;\n  left: 0;\n  right: 0;\n  padding: inherit 0;\n  margin-top: 1em;\n  background: hsla(24, 20%, 50%,.08);\n  background: linear-gradient(to right, hsla(24, 20%, 50%,.1) 70%, hsla(24, 20%, 50%,0));\n  pointer-events: none;\n  line-height: inherit;\n  white-space: pre;\n}\n\npre[data-line] .line-highlight:before, \npre[data-line] .line-highlight[data-end]:after {\n  content: attr(data-start);\n  position: absolute;\n  top: .4em;\n  left: .6em;\n  min-width: 1em;\n  padding: 0 .5em;\n  background-color: hsla(24, 20%, 50%,.4);\n  color: hsl(24, 20%, 95%);\n  font: bold 65%/1.5 sans-serif;\n  text-align: center;\n  vertical-align: .3em;\n  border-radius: 999px;\n  text-shadow: none;\n  box-shadow: 0 1px white;\n}\n\npre[data-line] .line-highlight[data-end]:after {\n  content: attr(data-end);\n  top: auto;\n  bottom: .4em;\n}html body{font-family:\"Helvetica Neue\",Helvetica,\"Segoe UI\",Arial,freesans,sans-serif;font-size:16px;line-height:1.6;color:#333;background-color:#fff;overflow:initial;box-sizing:border-box;word-wrap:break-word}html body\u003e:first-child{margin-top:0}html body h1,html body h2,html body h3,html body h4,html body h5,html body h6{line-height:1.2;margin-top:1em;margin-bottom:16px;color:#000}html body h1{font-size:2.25em;font-weight:300;padding-bottom:.3em}html body h2{font-size:1.75em;font-weight:400;padding-bottom:.3em}html body h3{font-size:1.5em;font-weight:500}html body h4{font-size:1.25em;font-weight:600}html body h5{font-size:1.1em;font-weight:600}html body h6{font-size:1em;font-weight:600}html body h1,html body h2,html body h3,html body h4,html body h5{font-weight:600}html body h5{font-size:1em}html body h6{color:#5c5c5c}html body strong{color:#000}html body del{color:#5c5c5c}html body a:not([href]){color:inherit;text-decoration:none}html body a{color:#08c;text-decoration:none}html body a:hover{color:#00a3f5;text-decoration:none}html body img{max-width:100%}html body\u003ep{margin-top:0;margin-bottom:16px;word-wrap:break-word}html body\u003eul,html body\u003eol{margin-bottom:16px}html body ul,html body ol{padding-left:2em}html body ul.no-list,html body ol.no-list{padding:0;list-style-type:none}html body ul ul,html body ul ol,html body ol ol,html body ol ul{margin-top:0;margin-bottom:0}html body li{margin-bottom:0}html body li.task-list-item{list-style:none}html body li\u003ep{margin-top:0;margin-bottom:0}html body .task-list-item-checkbox{margin:0 .2em .25em -1.8em;vertical-align:middle}html body .task-list-item-checkbox:hover{cursor:pointer}html body blockquote{margin:16px 0;font-size:inherit;padding:0 15px;color:#5c5c5c;border-left:4px solid #d6d6d6}html body blockquote\u003e:first-child{margin-top:0}html body blockquote\u003e:last-child{margin-bottom:0}html body hr{height:4px;margin:32px 0;background-color:#d6d6d6;border:0 none}html body table{margin:10px 0 15px 0;border-collapse:collapse;border-spacing:0;display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all}html body table th{font-weight:bold;color:#000}html body table td,html body table th{border:1px solid #d6d6d6;padding:6px 13px}html body dl{padding:0}html body dl dt{padding:0;margin-top:16px;font-size:1em;font-style:italic;font-weight:bold}html body dl dd{padding:0 16px;margin-bottom:16px}html body code{font-family:Menlo,Monaco,Consolas,'Courier New',monospace;font-size:.85em !important;color:#000;background-color:#f0f0f0;border-radius:3px;padding:.2em 0}html body code::before,html body code::after{letter-spacing:-0.2em;content:\"\\00a0\"}html body pre\u003ecode{padding:0;margin:0;font-size:.85em !important;word-break:normal;white-space:pre;background:transparent;border:0}html body .highlight{margin-bottom:16px}html body .highlight pre,html body pre{padding:1em;overflow:auto;font-size:.85em !important;line-height:1.45;border:#d6d6d6;border-radius:3px}html body .highlight pre{margin-bottom:0;word-break:normal}html body pre code,html body pre tt{display:inline;max-width:initial;padding:0;margin:0;overflow:initial;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}html body pre code:before,html body pre tt:before,html body pre code:after,html body pre tt:after{content:normal}html body p,html body blockquote,html body ul,html body ol,html body dl,html body pre{margin-top:0;margin-bottom:16px}html body kbd{color:#000;border:1px solid #d6d6d6;border-bottom:2px solid #c7c7c7;padding:2px 4px;background-color:#f0f0f0;border-radius:3px}@media print{html body{background-color:#fff}html body h1,html body h2,html body h3,html body h4,html body h5,html body h6{color:#000;page-break-after:avoid}html body blockquote{color:#5c5c5c}html body pre{page-break-inside:avoid}html body table{display:table}html body img{display:block;max-width:100%;max-height:100%}html body pre,html body code{word-wrap:break-word;white-space:pre}}.markdown-preview{width:100%;height:100%;box-sizing:border-box}.markdown-preview .pagebreak,.markdown-preview .newpage{page-break-before:always}.markdown-preview pre.line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}.markdown-preview pre.line-numbers\u003ecode{position:relative}.markdown-preview pre.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:1em;font-size:100%;left:0;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.markdown-preview pre.line-numbers .line-numbers-rows\u003espan{pointer-events:none;display:block;counter-increment:linenumber}.markdown-preview pre.line-numbers .line-numbers-rows\u003espan:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}.markdown-preview .mathjax-exps .MathJax_Display{text-align:center !important}.markdown-preview:not([for=\"preview\"]) .code-chunk .btn-group{display:none}.markdown-preview:not([for=\"preview\"]) .code-chunk .status{display:none}.markdown-preview:not([for=\"preview\"]) .code-chunk .output-div{margin-bottom:16px}.scrollbar-style::-webkit-scrollbar{width:8px}.scrollbar-style::-webkit-scrollbar-track{border-radius:10px;background-color:transparent}.scrollbar-style::-webkit-scrollbar-thumb{border-radius:5px;background-color:rgba(150,150,150,0.66);border:4px solid rgba(150,150,150,0.66);background-clip:content-box}html body[for=\"html-export\"]:not([data-presentation-mode]){position:relative;width:100%;height:100%;top:0;left:0;margin:0;padding:0;overflow:auto}html body[for=\"html-export\"]:not([data-presentation-mode]) .markdown-preview{position:relative;top:0}@media screen and (min-width:914px){html body[for=\"html-export\"]:not([data-presentation-mode]) .markdown-preview{padding:2em calc(50% - 457px)}}@media screen and (max-width:914px){html body[for=\"html-export\"]:not([data-presentation-mode]) .markdown-preview{padding:2em}}@media screen and (max-width:450px){html body[for=\"html-export\"]:not([data-presentation-mode]) .markdown-preview{font-size:14px !important;padding:1em}}@media print{html body[for=\"html-export\"]:not([data-presentation-mode]) #sidebar-toc-btn{display:none}}html body[for=\"html-export\"]:not([data-presentation-mode]) #sidebar-toc-btn{position:fixed;bottom:8px;left:8px;font-size:28px;cursor:pointer;color:inherit;z-index:99;width:32px;text-align:center;opacity:.4}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] #sidebar-toc-btn{opacity:1}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc{position:fixed;top:0;left:0;width:300px;height:100%;padding:32px 0 48px 0;font-size:14px;box-shadow:0 0 4px rgba(150,150,150,0.33);box-sizing:border-box;overflow:auto;background-color:inherit}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc::-webkit-scrollbar{width:8px}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc::-webkit-scrollbar-track{border-radius:10px;background-color:transparent}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc::-webkit-scrollbar-thumb{border-radius:5px;background-color:rgba(150,150,150,0.66);border:4px solid rgba(150,150,150,0.66);background-clip:content-box}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc a{text-decoration:none}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc ul{padding:0 1.6em;margin-top:.8em}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc li{margin-bottom:.8em}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .md-sidebar-toc ul{list-style-type:none}html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .markdown-preview{left:300px;width:calc(100% -  300px);padding:2em calc(50% - 457px -  150px);margin:0;box-sizing:border-box}@media screen and (max-width:1274px){html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .markdown-preview{padding:2em}}@media screen and (max-width:450px){html body[for=\"html-export\"]:not([data-presentation-mode])[html-show-sidebar-toc] .markdown-preview{width:100%}}html body[for=\"html-export\"]:not([data-presentation-mode]):not([html-show-sidebar-toc]) .markdown-preview{left:50%;transform:translateX(-50%)}html body[for=\"html-export\"]:not([data-presentation-mode]):not([html-show-sidebar-toc]) .md-sidebar-toc{display:none}\n/* Please visit the URL below for more information: */\n/*   https://shd101wyy.github.io/markdown-preview-enhanced/#/customize-css */\n \n      \u003c/style\u003e\n    \u003c/head\u003e\n    \u003cbody for=\"html-export\"\u003e\n      \u003cdiv class=\"mume markdown-preview   \"\u003e\n      \u003cp\u003eWith this tool, you can do math and engineering calculations, such as integrals, recurrence sequences and vectors, more easily.\u003cbr\u003e\nAll you need to do are to stick with some function syntax in Scheme (like using brackets \u003ccode\u003e()\u003c/code\u003e) to enter formulas, and put integers\u003cbr\u003e\nto select things in my menu.\u003c/p\u003e\n\u003cp\u003eThe repository containing the source codes is located \u003ca href=\"https://github.com/cleoold/calculus-toolbox\"\u003epage\u003c/a\u003e. The programme is written in Scheme, you can\u003cbr\u003e\nopen the file \u003ccode\u003erunme.scm\u003c/code\u003e in the main folder in \u003ccode\u003eDrracket\u003c/code\u003e to run it (as it includes \u003ccode\u003e#lang scheme\u003c/code\u003e prefix). If you are using a different\u003cbr\u003e\ninterpreter or compiler, you might need the corresponding module and comment out that \u003ccode\u003e#\u003c/code\u003e.\u003c/p\u003e\n\u003chr\u003e\n\u003ch2 class=\"mume-header\" id=\"library\"\u003eLibrary\u003c/h2\u003e\n\n\u003cp\u003eThe executable embeds all the necessary dll\u0026apos;s in the single file. It includes the math library also. So this tool supports various\u003cbr\u003e\noperators like \u003ccode\u003e(+ x y z), (- x y), (* x y), (/ x y), (sin x), (cos x), (tan x), (asin x), (acos x), (atan x), (sinh x), (cosh x), (tanh x), (sqrt x), (log x), (exp x), (floor x), (ceiling x)\u003c/code\u003e. Especially, x^3 is converted to \u003ccode\u003e(expt x 3)\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe tool itself provides a documentation about conversion of equation formats. For example, \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;\\small\u0026amp;space;1.5\\,\u0026amp;space;\\mathrm{cos}(\\omega\u0026amp;space;t-kx+\\frac{\\pi}{2})\" title=\"\\small \\small 1.5\\, \\mathrm{cos}(\\omega t-kx+\\frac{\\pi}{2})\"\u003e is converted into \u003ccode\u003e(* 1.5 (cos (+ (* w t) (-1 k x) (/ pi 2)) ) )\u003c/code\u003e.\u003c/p\u003e\n\u003ch2 class=\"mume-header\" id=\"using\"\u003eUsing\u003c/h2\u003e\n\n\u003cp\u003eIn Linux, open the terminal and navigate to /bin, use command \u003ccode\u003e./calculus-tool\u003c/code\u003e to open the executable.\u003cbr\u003e\nUnder the calculus-toolbox/standalone-executables/ folder, you can find the standalone executable files that can be run on Linux and Windows.\u003c/p\u003e\n\u003chr\u003e\n\u003ch2 class=\"mume-header\" id=\"instruction\"\u003eInstruction\u003c/h2\u003e\n\n\u003cp\u003eBelow describes the features of this tool.\u003c/p\u003e\n\u003ch3 class=\"mume-header\" id=\"solving-equation\"\u003eSolving equation\u003c/h3\u003e\n\n\u003cp\u003eIn the main menu, enter \u003ccode\u003e1\u003c/code\u003e to navigate to calculus menu, and then hit another \u003ccode\u003e1\u003c/code\u003e to arrive here.\u003cbr\u003e\nIn this screen, type your function and be sure to include the variable \u003ccode\u003ex\u003c/code\u003e only. For example, to solve x^3 - e^x + 3 = 0, you need to\u003cbr\u003e\ntype \u003ccode\u003e(+ (expt x 3) (- (exp x)) 3)\u003c/code\u003e, then hit enter. Since the tool uses Newton\u0026apos;s method to evaluate, it will then ask you for an initial\u003cbr\u003e\nguess, type any number you think will be close to a solution. For precision, you can input \u003ccode\u003e0.001\u003c/code\u003e or other small numbers; the tool\u003cbr\u003e\nuses this to find the derivative. The next step is to determine how many resursive calls it will evaluate the root, since the sequence \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\small\u0026amp;space;x_{n+1}=x_n-f(x_n)/f\u0026apos;(x_n)\" title=\"\\small x_{n+1}=x_n-f(x_n)/f\u0026apos;(x_n)\"\u003e  converges fast, you don\u0026apos;t need to input a number that\u0026apos;s too large.\u003cbr\u003e\nThe tool will print a solution after you hit enter, or reports an error if the input format is not correct.\u003c/p\u003e\n\u003cp\u003e\u0026#x22C5;\u0026#x22C5;\u0026#x22C5;\u003ca href=\"https://ibb.co/GPxKfdR\"\u003e\u003cimg src=\"https://i.ibb.co/C01kpwQ/solve12.png\" alt=\"solve12\" border=\"1\"\u003e\u003c/a\u003e\u003cbr\u003e\nYou can later change your initial guess to find other solutions.\u003cbr\u003e\nThe programme will remember the input data from the last state in which it is run.\u003c/p\u003e\n\u003ch3 class=\"mume-header\" id=\"derivative\"\u003eDerivative\u003c/h3\u003e\n\n\u003cp\u003eIn this screen, also make sure include the variable \u003ccode\u003ex\u003c/code\u003e; this programme doesn\u0026apos;t support other variables as input. You can input your desired point and precison. Note this precision represents the term \u003cem\u003eh\u003c/em\u003e in the formula \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\small\u0026amp;space;f\u0026apos;(x)=[f(x+h)-f(x)]/h\" title=\"\\small f\u0026apos;(x)=[f(x+h)-f(x)]/h\"\u003e. The result after evaluation will be then printed.\u003cbr\u003e\nIf you also want the left derivative, you can go to the \u003ccode\u003eadditional\u003c/code\u003e menu to do the exact same steps, which is useful for determining\u003cbr\u003e\nwhether the derivative exists.\u003cbr\u003e\nAfter the update on April 2019, a second derivative feature is added.\u003c/p\u003e\n\u003ch3 class=\"mume-header\" id=\"integration\"\u003eIntegration\u003c/h3\u003e\n\n\u003cp\u003eLike others, you have to include \u003ccode\u003ex\u003c/code\u003e and syntax. You will be asked to input the lower bound (from), the upper bound (to) and precision.\u003cbr\u003e\nNote this precision \u003cem\u003e\u0026quot;delta\u0026quot;\u003c/em\u003e represents the length of the step \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\small\u0026amp;space;\\left\u0026amp;space;\\|\u0026amp;space;P\u0026amp;space;\\right\u0026amp;space;\\|\" title=\"\\small \\left \\| P \\right \\|\"\u003e for the partition. This tool creates\u003cbr\u003e\na uniform partition with that length (if delta cannot divide the length of the interval, a shorter interval is created to terminate the programme, please see \u003ca href=\"https://github.com/cleoold/Math-expressions-or-racket-/blob/folder1/math-num-integral.rkt\"\u003ecode\u003c/a\u003e for info) and sum the average values of two ends of the subinterval according to the midpoint rule. This process can be described as\u003cbr\u003e\n\u003cimg src=\"https://latex.codecogs.com/svg.latex?\\small\u0026amp;space;\\int_{[a,b]}f=\\sum\u0026amp;space;_{k=1}^{N=\\left\u0026amp;space;\\lfloor\u0026amp;space;(b-a)/\\delta\u0026amp;space;\\right\u0026amp;space;\\rfloor}\\frac{1}{2}[f(p_{k-1})+f(p_k)]\\left\u0026amp;space;\\|\u0026amp;space;P\u0026amp;space;\\right\u0026amp;space;\\|+\\frac{1}{2}[f(p_N)+f(p_{N+1})][b-a-N\\left\u0026amp;space;\\|\u0026amp;space;P\u0026amp;space;\\right\u0026amp;space;\\|]\" title=\"\\small \\int_{[a,b]}f=\\sum _{k=1}^{N=\\left \\lfloor (b-a)/\\delta \\right \\rfloor}\\frac{1}{2}[f(p_{k-1})+f(p_k)]\\left \\| P \\right \\|+\\frac{1}{2}[f(p_N)+f(p_{N+1})][b-a-N\\left \\| P \\right \\|]\"\u003e\u003cbr\u003e\nIn which the term on the right can be avoided upon decreasing value of precision, or by using rational bounds.\u003cbr\u003e\nIf you want to evaluate the left or right integral, you can go to the \u003ccode\u003eadditional\u003c/code\u003e menu to do so. This is useful for determining if\u003cbr\u003e\nthe integral exists; if the programme crashes, then it is not integrable over the interval.\u003c/p\u003e\n\u003ch3 class=\"mume-header\" id=\"recurrence-sequence\"\u003eRecurrence sequence\u003c/h3\u003e\n\n\u003cp\u003eIf a sequence is determined recursively, then this tool provides great help for building a table and summing terms.\u003cbr\u003e\nBefore using, please acknowdge that the index of a sequence starts from \u003cstrong\u003e0\u003c/strong\u003e. if a term is determined recursively by its previous\u003cbr\u003e\nterm, then it needs one base value. Such sequences look like \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;\\left\u0026amp;space;\\{\u0026amp;space;a:a_0=A,a_k=f(a_{k-1})\u0026amp;space;\\right\u0026amp;space;\\}\" title=\"\\small \\left \\{ a:a_0=A,a_k=f(a_{k-1}) \\right \\}\"\u003e . In this case, enter \u003ccode\u003e1\u003c/code\u003e. If a term is determined by two of its previous values, then it needs two base values, and (possibly) looks like\u003cbr\u003e\n\u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;\\left\u0026amp;space;\\{\u0026amp;space;a:a_0=A,a_1=B,a_k=f(a_{k-2},a_{k-1})\u0026amp;space;\\right\u0026amp;space;\\}\" title=\"\\small \\left \\{ a:a_0=A,a_1=B,a_k=f(a_{k-2},a_{k-1}) \\right \\}\"\u003e. For this, enter \u003ccode\u003e2\u003c/code\u003e.\u003cbr\u003e\nNow you can enter your A, and B if necessary. In the next step, if you entered \u003ccode\u003e1\u003c/code\u003e, then include \u003ccode\u003ex\u003c/code\u003e in your expression. That \u003ccode\u003ex\u003c/code\u003e represents the last term based on generating the new term. If you entered \u003ccode\u003e2\u003c/code\u003e, then use \u003ccode\u003ex\u003c/code\u003e for \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;a_{k-2}\" title=\"\\small a_{k-2}\"\u003e, and \u003ccode\u003ey\u003c/code\u003e for \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;a_{k-1}\" title=\"\\small a_{k-1}\"\u003e.\u003c/p\u003e\n\u003cp\u003eYou can then input your order to evaluate things, below shows a sequence defined by \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;\\left\u0026amp;space;\\{a:\u0026amp;space;a_0=1,a_1=1,a_k=\\sqrt{a_{k-2}}+\\sqrt{a_{k-1}}\u0026amp;space;\\right\u0026amp;space;\\}\" title=\"\\small \\left \\{a: a_0=1,a_1=1,a_k=\\sqrt{a_{k-2}}+\\sqrt{a_{k-1}} \\right \\}\"\u003e.\u003cbr\u003e\n\u0026#x22C5;\u0026#x22C5;\u0026#x22C5;\u003ca href=\"https://i.imgur.com/c5FBV5Y.png\"\u003e\u003cimg src=\"https://i.imgur.com/c5FBV5Y.png\" alt=\"4211245\" border=\"1\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch3 class=\"mume-header\" id=\"gradient\"\u003eGradient\u003c/h3\u003e\n\n\u003cp\u003eThis menu calculates partial derivative, gradient, and directional derivative for a function defined by multiple variables.\u003cbr\u003e\nTo start, enter your list of variables enclosed by brackets in the first screen, then input the function that has these variables.\u003cbr\u003e\nFor example, for \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;\\small\u0026amp;space;f(x,y,z)=\\sqrt[3]{xyz}\" title=\"\\small f(x,y,z)=\\sqrt[3]{xyz}\"\u003e, you need to enter \u003ccode\u003e(x y z)\u003c/code\u003e first, then \u003ccode\u003e(expt (* x y z) 1/3)\u003c/code\u003e second. The program will turn it into a\u003cbr\u003e\nlambda expression for that expression.\u003cbr\u003e\nNow for each of the three features, you need to input points (or vectors). For example, if you want to type in a point (2 5 2.2),\u003cbr\u003e\nthen simply type in \u003ccode\u003e(2 5 2.2)\u003c/code\u003e for that. Also, they need the precision input, this is the same as in the previous derivative section.\u003cbr\u003e\nBelow shows a calculation for directional derivative at (2 3 9.2), followed by the gradient.\u003cbr\u003e\n\u003ca href=\"https://ibb.co/H4zPK2F\"\u003e\u003cimg src=\"https://i.ibb.co/fFpNXS1/523t3.png\" alt=\"523t3\" border=\"0\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2 class=\"mume-header\" id=\"decimal-conversion\"\u003eDecimal conversion\u003c/h2\u003e\n\n\u003cp\u003eThis tool in under the \u003ccode\u003eadditional\u003c/code\u003e menu. You can do the conversion from decimal to baseN (N \u0026gt;= 2), or from baseN to decimal\u003cbr\u003e\n(1 \u0026lt;= N \u0026lt; 10). The algorithm can be found \u003ca href=\"https://github.com/cleoold/Math-expressions-or-racket-/blob/folder1/binary.rkt\"\u003ehere\u003c/a\u003e.\u003cbr\u003e\n\u0026#x22C5;\u0026#x22C5;\u0026#x22C5;\u003ca href=\"https://imgbb.com/\"\u003e\u003cimg src=\"https://i.ibb.co/NKnXSqk/53243.png\" alt=\"53243\" border=\"0\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2 class=\"mume-header\" id=\"product-of-vector\"\u003eProduct of vector\u003c/h2\u003e\n\n\u003cp\u003eYou can find this option under the \u003ccode\u003evector\u003c/code\u003e menu. You can input your vector u first, followed by v. The tool will compute their dot\u003cbr\u003e\nproduct for you, and if the length is 3, then it also returns the vector u \u0026#xD7; v.\u003cbr\u003e\n\u0026#x22C5;\u0026#x22C5;\u0026#x22C5;\u003ca href=\"https://imgbb.com/\"\u003e\u003cimg src=\"https://i.ibb.co/KhqGcTp/42523.png\" alt=\"42523\" border=\"0\"\u003e\u003c/a\u003e\u003cbr\u003e\u003c/p\u003e\n\u003ch2 class=\"mume-header\" id=\"projection\"\u003eProjection\u003c/h2\u003e\n\n\u003cp\u003eThis feature produces three vectors at once upon you inputting two vectors. After you enter x first and then u, the followings are returned in order:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eProjection of vector x onto vector u. \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;[\\mathrm{prj_\\mathbf{u}}]\\mathbf{x}=\\frac{\\mathbf{u\\cdot\u0026amp;space;x}}{\\mathbf{u}^2}\\mathbf{u}\" title=\"[\\mathrm{prj_\\mathbf{u}}]\\mathbf{x}=\\frac{\\mathbf{u\\cdot x}}{\\mathbf{u}^2}\\mathbf{u}\"\u003e\u003c/li\u003e\n\u003cli\u003ePerpendicular of vector x onto vector u. \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;[\\mathrm{perp_\\mathbf{u}}]\\mathbf{x}=\\mathbf{x}-[\\mathrm{prj_\\mathbf{u}}]\\mathbf{x}\" title=\"[\\mathrm{perp_\\mathbf{u}}]\\mathbf{x}=\\mathbf{x}-[\\mathrm{prj_\\mathbf{u}}]\\mathbf{x}\"\u003e\u003c/li\u003e\n\u003cli\u003ereflection of vector x onto the hyperplane with normal u. \u003cimg src=\"https://latex.codecogs.com/svg.latex?\\inline\u0026amp;space;[\\mathrm{refl_\\mathbf{u}}]\\mathbf{x}=\\mathbf{x}-[\\mathrm{prj_\\mathbf{u}}]2\\mathbf{x}\" title=\"[\\mathrm{refl_\\mathbf{u}}]\\mathbf{x}=\\mathbf{x}-[\\mathrm{prj_\\mathbf{u}}]2\\mathbf{x}\"\u003e\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3 class=\"mume-header\" id=\"and-more-minor-tools\"\u003eAnd more minor tools\u003c/h3\u003e\n\n\u003cp\u003eUpdates will be on \u003ca href=\"https://github.com/cleoold/calculus-toolbox/blob/master/versions/newfeature.md\"\u003epage\u003c/a\u003e. The tool also provides vector rotation, vector molulo, sum/product of sequence and more.\u003c/p\u003e\n\u003chr\u003e\n\u003ch2 class=\"mume-header\" id=\"progress\"\u003eProgress\u003c/h2\u003e\n\n\u003cp\u003eI give up on vector addition, hexadecimal conversion, building function table, etc as they are less challenging and can be found anywhere on-line or on your scientific calculator. In the future, I will plan to implement approximations of double integral, and some matrix operations such as multiplication and determinants.\u003c/p\u003e\n\n      \u003c/div\u003e\n      \n      \n    \n    \n    \n    \n    \n    \n    \n    \n  \n    \u003c/body\u003e\u003c/html\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcleoold%2Fcalculus-toolbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcleoold%2Fcalculus-toolbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcleoold%2Fcalculus-toolbox/lists"}