神教程
【编者按】
前天,在【编辑之谭】Origin制图交流群里,云长同学提出一个问题:怎样寻找曲线的最大曲率点坐标,给出的样图如下。

群里展开了热烈的讨论,谭编也没试过这个问题,于是寻求群里帮助,得到了北科大孙同学的解答,并在今天专门制作了一个简单的教程。谭编立即测试了该方法,并将教程详细扩充后分享给大家。非常感谢助人为乐的孙同学们。
谭编后续将依据该方法,设计一个在线程序,类似于谭编前面设计的k1Tool 秒办线性拟合工具,只要将这系列数据粘贴到一个文本框,按TAB键,1秒钟即可将每条曲线最大曲率的点坐标列出来,这将是一个非常有意义的小工具。请大家关注。
Origin寻找曲率最大点
孙彤丽1,谭编2
(1. 北京科技大学;2. 华南师范大学学报编辑部)
对于一系列实验曲线,在某种情况下,我们需要寻找每条曲线在最大曲率处的点的坐标(x,y),利用Origin软件分三步运算(一阶求导、二阶求导、曲率k的运算)和一次查询(max(k)),可以求得每条曲线最大曲率的点坐标。
1. 曲率公式
曲率、曲率半径的求解公式如下:
图1 曲率、曲率半径的计算公式
2. Origin一阶、二阶求导
由于云长同学提供的数据中Y值太小,导致数据的一阶导数太小(这样会使一阶导数对曲率的影响较小而被忽略),因此,对数据的Y值放大1000倍处理。本文仅对B曲线进行相关解释说明。
第一步:求一阶和二阶导数。选中B(Y)列,然后点击菜单Analysis-Mathematics-Differentiate-Open Dialog Theme,将打开的Differentiate对话框中的Derivative Order选为1(一阶导数选1)或2(二阶导数选2)。其过程图如下图。
图2 Origin 一阶、二阶求导方法
一阶、二阶导数完成后,在表格右侧新建一列。选中新增的空白列,点击右键,选择Set Column values,
图3 新增一列并设置函数
图4 设置函数公式
3. 寻找最大k值
将产生的数据拷贝到EXCEL表格(Origin嵌入的在其上方工具栏第4个按钮)中,在空单元格G1的函数输入框中输入公式“=max(E1:E60)”,可找到曲率最大值;再在G2单元格中输入公式“=MATCH(G1,E1:E60)”即可显示最大曲率的点在46行。
图5 利用Excel寻找最大值
也可以在Origin中排序,如下图所示,点击曲率结果的那一列(E)列的表头全选E列数据,再选择菜单Worksheet-sort Worksheet-Descending,对整个数据表依据E列降序排列,得到的第一行数据就是我们寻找的曲率最大点。

图6 利用Origin软件排序获取最大值
总之,利用Origin软件需要许多步骤才能找到曲率最大处的点坐标。后续,谭编将根据本文方法设计一个自动的在线工具,方便大家使用,敬请关注。