# IJS 快速参考指南 ## 🎯 基本语法 ### 函数调用 ```mathematica FunctionName[arg1, arg2, ...] ``` ### 列表和范围 ```mathematica {1, 2, 3, 4, 5} // 列表 {x, 0, 10} // 范围:变量 x 从 0 到 10 {x, 0, 10, 0.5} // 带步长的范围 ``` ### 变量赋值 ```mathematica x = 5 f = x^2 + 3*x ``` ## 📊 绘图函数 | 函数 | 语法 | 示例 | |------|------|------| | Plot | `Plot[func, {var, min, max}]` | `Plot[Sin[x], {x, -10, 10}]` | | ParametricPlot | `ParametricPlot[{xFunc, yFunc}, {var, min, max}]` | `ParametricPlot[{Cos[t], Sin[t]}, {t, 0, 2*Pi}]` | | PolarPlot | `PolarPlot[rFunc, {var, min, max}]` | `PolarPlot[1+Cos[t], {t, 0, 2*Pi}]` | | ListPlot | `ListPlot[list]` | `ListPlot[{1, 4, 9, 16, 25}]` | ## 🧮 微积分 | 函数 | 说明 | 示例 | |------|------|------| | D | 求导 | `D[x^3, x]` | | Integrate | 积分 | `Integrate[x^2, x]` | | Limit | 极限 | `Limit[Sin[x]/x, x -> 0]` | | Series | 级数展开 | `Series[Exp[x], {x, 0, 5}]` | | Sum | 求和 | `Sum[i^2, {i, 1, 10}]` | | Product | 求积 | `Product[i, {i, 1, 5}]` | ## 🔢 代数 | 函数 | 说明 | 示例 | |------|------|------| | Solve | 解方程 | `Solve[x^2 - 4 == 0, x]` | | Expand | 展开 | `Expand[(x+1)^3]` | | Factor | 因式分解 | `Factor[x^2 - 4]` | | Simplify | 化简 | `Simplify[Sin[x]^2 + Cos[x]^2]` | | Together | 通分 | `Together[1/x + 1/y]` | | Apart | 部分分式 | `Apart[1/(x^2-1), x]` | ## 📐 矩阵 | 函数 | 说明 | 示例 | |------|------|------| | Det | 行列式 | `Det[{{1,2},{3,4}}]` | | Inverse | 逆矩阵 | `Inverse[{{1,2},{3,4}}]` | | Transpose | 转置 | `Transpose[{{1,2},{3,4}}]` | | Eigenvalues | 特征值 | `Eigenvalues[{{1,2},{3,4}}]` | ## 🔬 变换 | 函数 | 说明 | 示例 | |------|------|------| | FourierTransform | 傅里叶变换 | `FourierTransform[Exp[-x^2], x, w]` | | LaplaceTransform | 拉普拉斯变换 | `LaplaceTransform[Sin[t], t, s]` | | InverseLaplaceTransform | 逆拉普拉斯变换 | `InverseLaplaceTransform[1/(s^2+1), s, t]` | ## 🎲 数论 | 函数 | 说明 | 示例 | |------|------|------| | GCD | 最大公约数 | `GCD[12, 18]` | | LCM | 最小公倍数 | `LCM[12, 18]` | | FactorInteger | 质因数分解 | `FactorInteger[60]` | | PrimeQ | 判断素数 | `PrimeQ[17]` | | Prime | 第n个素数 | `Prime[10]` | | Fibonacci | 斐波那契数 | `Fibonacci[10]` | | Binomial | 组合数 | `Binomial[5, 2]` | ## 🔄 格式转换 | 函数 | 说明 | 示例 | |------|------|------| | TeXForm | 转换为 LaTeX | `TeXForm[Sin[x]^2 + Cos[x]^2]` | | InputForm | 输入格式 | `InputForm[expr]` | | FullForm | 完整形式 | `FullForm[expr]` | | JavaForm | Java 代码 | `JavaForm[expr]` | | N | 数值化 | `N[Pi, 50]` | ## 📋 数据生成 | 函数 | 说明 | 示例 | |------|------|------| | Table | 生成表格 | `Table[i^2, {i, 1, 10}]` | | Range | 生成数列 | `Range[1, 10]` | ## 🎯 优化 | 函数 | 说明 | 示例 | |------|------|------| | Maximize | 求最大值 | `Maximize[x^2 - 4*x + 3, x]` | | Minimize | 求最小值 | `Minimize[x^2 - 4*x + 3, x]` | ## 💡 特殊命令 | 命令 | 说明 | |------|------| | `help` 或 `?` | 显示帮助 | | `clear` 或 `cls` | 清空输出 | | `reset` | 重置所有变量 | | `history` | 显示命令历史 | | `vars` | 显示已定义变量 | | `clear ` | 清除特定变量 | | `plugins` | 打开插件管理 | ## ⌨️ 快捷键 | 快捷键 | 功能 | |--------|------| | `Enter` | 执行命令 | | `↑` | 上一条历史命令 | | `↓` | 下一条历史命令 | | `Tab` | 自动补全函数名 | ## 📝 常用示例 ### 绘制美丽的曲线 ```mathematica // 心形线 ParametricPlot[{2*Cos[t]-Cos[2*t], 2*Sin[t]-Sin[2*t]}, {t, 0, 2*Pi}] // 螺旋线 ParametricPlot[{t*Cos[t], t*Sin[t]}, {t, 0, 6*Pi}] // 圆 ParametricPlot[{2*Cos[t], 2*Sin[t]}, {t, 0, 2*Pi}] // 五函数同坐标系 Plot[{Sin[x], Cos[x], x/3, x^2/8, Sin[2*x]/2}, {x, 0, 2*Pi}] // 散点图 ListPlot[{{1,1},{2,4},{3,9},{4,16}}] ``` ### MCP 服务器 ```bash # 默认端口 8734,自动启动 curl -X POST http://127.0.0.1:8734/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call", "params":{"name":"evaluate", "arguments":{"expression":"D[x^3,x]"}}}' # RikkaHub 配置 {"mcpServers":{"ijs":{"type":"streamable-http", "url":"http://127.0.0.1:8734/mcp", "commonOptions":{"name":"IJS - Symja","enable":true,"headers":[]}}}} # 输入 mcp 命令查看完整配置 + 服务器状态 ``` ### 插件开发 ```javascript // inline 模式:弹窗输入 + 执行按钮 function calculate(inputs, IJS) { IJS.Symja.print("计算中..."); return IJS.Symja.differentiate(inputs.func, inputs.var); } // fullscreen 模式:全屏 Canvas 游戏 function calculate(inputs, IJS) { var ctx = IJS.canvas.create(); // 自动填满屏幕 var W = IJS.canvas.width(); IJS.canvas.fill("#1a1a2e"); // ... Canvas 2D 绘图 ... IJS.input.onTouchEnd(function(e) { var pos = IJS.input.xy(e); // 统一坐标转换 // 处理触摸... }); } ``` ### 内置应用 ```mathematica power2 // 打开 "The Power of Two" — 用数字 2 构造任意值! imusic // 打开 "无理数音乐" — 将 π、e 等转为音乐播放! ``` // 螺旋线 ParametricPlot[{t*Cos[t], t*Sin[t]}, {t, 0, 10}] ``` ### 求解数学问题 ```mathematica // 求导数 D[x^3 + 2*x^2 - 5*x + 1, x] // 求积分 Integrate[x*Sin[x], x] // 解方程 Solve[x^3 - 6*x^2 + 11*x - 6 == 0, x] // 因式分解 Factor[x^4 - 1] // 泰勒展开 Series[Sin[x], {x, 0, 7}] ``` ### 矩阵运算 ```mathematica // 定义矩阵 A = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} // 计算行列式 Det[A] // 求特征值 Eigenvalues[A] // 矩阵乘法 {{1,2},{3,4}}.{{5,6},{7,8}} ``` ### 数值计算 ```mathematica // 高精度计算 π N[Pi, 100] // 计算平方根 N[Sqrt[2], 50] // 数值积分 NIntegrate[Exp[-x^2], {x, 0, Infinity}] ``` ## 🔗 更多资源 - 完整文档:查看 README.md - 插件开发:查看应用内的插件开发文档 - Symja 官方文档:https://github.com/axkr/symja_android_library --- **提示**:所有函数名首字母大写,使用方括号 `[]` 表示参数!