Liquid Glass 设计

Super Function Graphing Calculator

基于桥接模式的高性能函数计算与可视化工具,融合 C 与 Python 优势,带来极致流畅的计算体验。支持 2D/3D 绘图、数值微积分、方程求解、统计分布、极值查找与曲线拟合。

功能特性

强大的计算能力与优雅的可视化完美结合,覆盖从基础绘图到高级数值分析

函数绘图

支持输入任意含 x 的数学表达式并绘制高精度曲线,可自定义坐标范围、采样步长与网格显示

多曲线叠加

同时绘制多条函数曲线,自动分配不同颜色与线型,方便对比分析与叠加观察

数值微分

一阶导数 f'(x) 和二阶导数 f''(x) 计算,采用中心差分法,误差 O(h²)

数值积分

定积分计算,采用自适应 Simpson 复合法则,误差 O(h⁴),支持任意区间

方程求解

Newton-Raphson 法配合二分法回退,以及纯二分法模式,快速稳健地求解非线性方程

非线性方程组求解

求解两个未知数的非线性方程组 f(x,y)=0, g(x,y)=0,采用 Newton 法配合数值雅可比矩阵,同时适用于求曲线交点

3D 函数绘图

支持含 x 和 y 的三维函数表达式,绘制 3D 曲面图,支持旋转缩放与多种色彩映射

参数曲线绘图

支持以 x(t) 和 y(t) 定义的参数曲线,内置圆、椭圆、李萨如图形、螺旋线、心形线等 10 种预设

极坐标绘图

支持以 r(theta) 定义的极坐标曲线,内置心形线、玫瑰线、螺旋线、三叶草等 12 种预设

隐函数绘图

支持绘制 f(x,y)=0 形式的隐函数方程,内置圆、椭圆、双曲线、心形线、双纽线、笛卡尔叶形线等 8 种预设,可调分辨率

零点自动扫描

在指定区间内自动采样扫描函数的所有零点,符号变化检测 + 二分法精确定位,结果标注在图上

曲线交点查找

在任意两条 2D 曲线之间自动查找所有交点,符号变化检测 + 二分法精确定位,紫色星标标注在图上

极值查找

黄金分割搜索法,在指定区间内寻找函数的局部最小值与最大值,线性收敛保证精度

切线与法线

在 2D 曲线任意点处一键绘制切线与法线,以虚线形式直观标注在图上,便于分析函数局部特征

弧长计算

在任意区间上通过自适应弦长累加法逼近曲线弧长,支持多段函数与间断点自动跳过

曲线间面积

使用自适应辛普森法则计算任意两条曲线 f(x) 和 g(x) 在区间 [a,b] 上的封闭面积

极限计算

支持左极限、右极限与双侧极限计算,采用 Richardson 外推法提高精度,自动判断极限是否存在

傅里叶变换与频谱分析

对任意函数进行 FFT 频谱分析,自动识别主频分量,绘制幅度谱与相位谱,支持 CSV 导出

泰勒级数展开

将任意函数在指定点展开为泰勒多项式,支持自定义阶数,展示系数与多项式表达式,并可绘制泰勒近似与原函数对比图

dy/dx

ODE 求解器 (RK4)

使用四阶 Runge-Kutta 方法求解常微分方程初值问题 dy/dx = f(x,y),支持自定义步数,可绘制解曲线

统计计算器

输入数据集,自动计算均值、中位数、众数、方差、标准差、四分位数与极差,支持排序、直方图可视化与 CSV 导出

a b c d

矩阵运算

线性代数运算:矩阵加法、减法、乘法、行列式、逆矩阵、转置、秩、行最简形(RREF)及特征值计算,支持任意尺寸矩阵输入

i

复数计算器

支持复数四则运算(+、-、*、/、^)、三角函数(sin、cos、tan)、指数、对数、平方根、绝对值与共轭运算,输入格式:a+bi

单位转换器

支持长度、重量、温度、面积、体积、时间、数据存储、速度和角度等 9 个单位类别的全面转换

曲线拟合 / 回归分析

支持线性、多项式(可配置阶数)、指数、幂函数和对数拟合模型,显示拟合方程与 R² 拟合优度,支持散点图 + 拟合曲线可视化

CSV 数据导入与散点图

导入 CSV/TSV 数据文件,绘制散点图、折线图或柱状图,支持线性/二次/指数趋势线拟合与 R² 显示

CSV 数据导出

一键导出计算历史、统计数据与回归分析结果为标准 CSV 文件,支持所有平台(Android、桌面、Web)

统计分布计算器

计算 6 种常见概率分布的 PDF/PMF、CDF 和 PPF(逆 CDF):正态分布、t 分布、卡方分布、F 分布、二项分布和泊松分布,支持分布绘图与参数对比

数论计算器

支持整数因式分解、素数判定、最大公约数/最小公倍数、Fibonacci 数列、模幂运算和欧拉函数 φ(n),涵盖基础数论核心功能

10 16 01 A

进制转换器

在二进制、八进制、十进制与十六进制之间实时转换数字,支持 2-36 任意进制,交互式网页演示

1 0 1 1

位运算计算器

支持 AND、OR、XOR、NOT、左移、右移运算,实时显示二进制位图与多进制结果,可交互点击切换每一位

万年历

查询任意日期是星期几,计算两日期之间的天数差,以及对日期加减天数

参数系统

自动检测表达式中的未知参数,动态生成参数输入框,实时调节函数形态,探索参数空间

坐标标记

左键点击图表标记坐标点,右键点击删除已标之点,支持手动输入 x 值自动定位,便于精确分析函数特征

π

快速输入面板

弹出式快捷按钮面板,一键输入常用运算符、函数和常数,大幅提升表达式输入效率

%

取整与取模运算

内置 floor(x)、ceil(x) 取整函数和 x mod y 取模运算符,支持表达式中的灵活组合与快速输入

Android 应用

独立 APK,Material Design 3 界面,支持 ARM64 架构,包含 2D/3D 函数绘图与触控旋转

Windows EXE

提供独立 Windows 可执行文件,无需 Python 环境,开箱即用,保留命令行输出窗口

预设函数库

内置 19 个常用函数预设(含 3D 预设),一键选择即可快速体验,无需手动输入

函数数据表

一键生成 x-f(x) 数据表格,支持自定义采样范围与点数,可导出 CSV 或复制到剪贴板

交互式图表

Matplotlib 工具栏原生支持缩放、平移、导出 PNG,点击画布即可标记坐标

位运算计算器

支持 AND、OR、XOR、NOT、左移、右移,实时显示二进制位图与多进制结果

万年历

查询星期、计算日期差、加减天数

数值方法对比

对比不同ODE数值求解方法(欧拉法、改进欧拉法、中点法、RK4、RKF45)的精度与收敛性

ODE Method Comparison

输入微分方程 dy/dx = f(x,y),对比不同数值方法的求解结果。

数据插值

支持线性、拉格朗日、牛顿、三次样条和 Akima 样条插值,可视化数据拟合曲线

Data Interpolation Calculator

Enter data points as x,y; x,y; ... and select an interpolation method to evaluate or visualize.

快速开始

只需几步即可开始体验高性能计算

方式一:下载 Windows EXE(无需 Python)

直接下载 Release 中的 Windows 可执行文件,双击即可运行,保留命令行窗口输出,开箱即用。

方式二:Python 源码运行

pip install numpy matplotlib
python super_calc_bridged.py
Python 3.9+ numpy matplotlib

支持平台

跨平台支持,随时随地使用

Windows
x64 (含 EXE)
Linux
x86_64 / ARM64
macOS
x86_64 / ARM64
Android
aarch64

API 参考

简洁易用的 Python API 接口,通过 calc_bridge 调用 C 核心

表达式求值

CalcEngine.evaluate("x^2", 3.0)
# -> 9.0

二元函数求值

CalcEngine.evaluate_xy("x^2+y^2", 3.0, 4.0)
# -> 25.0

批量求值

CalcEngine.evaluate_array("sin(x)", [0, 0.5, 1.0])

一阶导数

CalcEngine.derivative("x^3", 2.0)
# -> ~12.0

二阶导数

CalcEngine.derivative2("x^3", 2.0)
# -> ~12.0

定积分

CalcEngine.integrate_adaptive("x^2", 0, 1)
# -> ~0.333

方程求根 (Newton)

CalcEngine.solve("x^2 - 4", guess=1, xmin=0, xmax=3)
# -> 2.0

方程求根 (Bisection)

CalcEngine.solve_bisection("x^2 - 4", xmin=0, xmax=3)
# -> 2.0

查找最小值

CalcEngine.find_minimum("x^2", -5, 5)
# -> ~0.0

查找最大值

CalcEngine.find_maximum("sin(x)", 0, 6)
# -> ~1.571

曲线交点查找

# Solve (expr_a) - (expr_b) = 0
CalcEngine.solve_bisection("(sin(x))-(cos(x))", 0, 3.14)
# -> ~0.785

切线与法线

# Tangent slope = derivative at x0
slope = CalcEngine.derivative("x^2", 2.0)
y0 = CalcEngine.evaluate("x^2", 2.0)
# Normal slope = -1/slope

弧长计算

CalcEngine.arc_length("sin(x)", 0, 3.141592653589793)
# -> ~3.820

曲线间面积

CalcEngine.area_between_curves("sin(x)", "0", 0, 3.141592653589793)
# -> 2.0

CalcEngine.area_between_curves("x^2", "x", 0, 1)
# -> ~0.1667

极限计算

CalcEngine.limit("sin(x)/x", 0)
# -> ~1.0

CalcEngine.limit_left("1/x", 0)
# -> -inf

CalcEngine.limit_right("1/x", 0)
# -> +inf

参数曲线求值

CalcEngine.evaluate_parametric("cos(t)", "sin(t)", 0, 2*pi, 500)
# -> {'xs': [...], 'ys': [...], 'ts': [...]}

傅里叶变换频谱

CalcEngine.fft_spectrum("sin(2*pi*x)+0.5*sin(6*pi*x)", 0, 2, 1024)
# -> {'freqs': [...], 'amps': [...], 'phases': [...]}

泰勒级数展开

CalcEngine.taylor_coefficients("sin(x)", 0, 6)
# -> [0, 1, 0, -0.1667, 0, 0.00833, 0]

CalcEngine.taylor_evaluate("sin(x)", 0, 0.5, 8)
# -> ~0.4794 (Taylor polynomial at x=0.5)

计算历史

# 记录最近 10 次计算
CalcEngine.history_add("x^2 = 9", 9.0)
# -> true

# 获取历史记录数
CalcEngine.history_count() # -> 1

# 获取全部历史记录
CalcEngine.history_get_all() # -> "x^2 = 9=9.0"

# 清空历史记录
CalcEngine.history_clear() # -> true

架构设计

优雅的桥接模式设计,抽象与实现独立演进

本项目采用桥接模式 (Bridge Pattern)的核心思想:将抽象 (GUI) 与实现 (计算引擎) 分离,使两者可以独立变化。

+---------------------------------+ | super_calc_bridged.py | Tkinter + Matplotlib GUI | (抽象层) | +---------------------------------+ | calc_bridge.py | ctypes 桥接层 +---------------------------------+ | calc_core.dll / .so | C 动态库 (计算引擎) +---------------------------------+
C 层

负责所有数值计算 — 表达式解析、微积分、方程求解与极值查找

Python 层

通过 ctypes 调用 C 核心,提供 Tkinter + Matplotlib 图形界面

桥接层

启动时自动检测平台和 CPU 架构,选择正确的预编译二进制文件

表达式语法

丰富的数学表达式支持,覆盖常见运算与函数

算术运算

+ - * / ^ (乘方)

x^2 + 2*x - 1

三角函数

sin cos tan

sin(x) + cos(x)

对数/指数

ln log exp

ln(x) exp(-x)

根号/绝对值

sqrt abs

sqrt(x) abs(x)

数学常数

pi e

sin(pi*x)

阶乘

! (后置运算符)

x! 5!

进制转换器

在二进制、八进制、十进制与十六进制之间实时转换数字

概率计算器

组合数、排列数、事件概率、条件概率、贝叶斯定理与二项分布

金融计算器

贷款月供、复利终值/现值、NPV/IRR、债券定价、退休储蓄规划

旋转体体积计算器

圆盘法、垫圈法、壳法,可视化旋转体体积计算

方向场可视化

输入微分方程 dy/dx = f(x,y),可视化方向场与初始条件曲线

拉普拉斯变换

计算拉普拉斯变换 L{f(t)}(s) 和逆拉普拉斯变换 f(t),支持常见变换对的模式匹配

Presets:

向量场可视化

输入二维自治系统 dx/dt=P(x,y), dy/dt=Q(x,y),可视化向量场与解曲线

等高线图

输入 f(x,y) 表达式,可视化水平集 f(x,y) = c

自定义函数

定义 f(x) = 表达式,然后在计算器中使用 f(...)

(x) =

稀疏矩阵求解器

以三元组格式输入稀疏矩阵,支持稠密转换、矩阵向量乘法和 CG 迭代求解

卷积计算器

输入两个数字序列,计算离散一维卷积 (c[n] = Σ a[k]·b[n-k])

数据导入与散点图

导入CSV数据,绘制散点图/折线图/柱状图,支持趋势线拟合