首页/文章/ 详情

Cursor实践心得,附有问答过程

3小时前浏览2

简述

这段时间本想用Cursor实现仿真流程的简单建模、网格剖分、有限元求解、显示这几个步骤,尝试做成一个简单的小软件,结果不断尝试后,发现还是毕竟难以实现,或者说还没有找到更好的对话方式。最后Cursor的免费使 用时间,这个想法也暂时夭折了。

不过,实现过程中还是有一些结果与心得,这里简单总结一下。

最后附上部分与cursor对话的截图。

一些结果

1.我先让Cursor帮我用Qt做一个界面,实现简单建模的功能。

实现过程中,界面绘制简单模型,包括与右端几何树的联动好了,结果在进一步添加bool运算的时候,始终报错。最后导致整个代码难以调试通过,也回不去没有bool运算的结果。

中间环境的代码没有保存,因此也无法展示没有bool运算的结果了。只能看看一步步生成的文件夹内容。

2.想了想,那就看看能不能实现简单的网格剖分

想着Cursor可能比较笨,因此就选择毕竟容易的python语言。最先让它帮我写了一个markdown,现在里面写好各个步骤的流程与一些能想到的细节。    

然后给它正确的读入几何模型的格式(直接用triangle的input格式)。解析好后,然后使用delaunay网格剖分,很快最简单的实现了,这时候吸取教训,保存的结果:

   

然后让Cursor帮我添加面积约束,也实现了,只不过网格质量很差:

然后想着和tiangle一样,实现区域的面积控制,也基本上实现了,虽然网格质量还是很差:

这里我预感后面的优化可能会出问题,于是备份代码。

接下来,我尝试让其帮我优化网格质量,根据角度、长短边比之类的。这里就开始卡住了,始终解决不了问题,而且在一次次的修改bug中也打乱了没有优化网格的代码,结果再一次导致整个代码无法修复,最终的结果就出现如下问题:    

无论如何调试,始终不对,直到Cursor试用期到了。下面是生成的文件名,可以看到mesh_generator.py修改了110次了还没有成功。

使用心得:

1.对于比较复杂的依赖环境Cursor能很好的提供解决方案和傻瓜式的流程,一步一步教你安装、查看版本、如何编译等待操作。只要你的电脑环境本身不复杂,那么基本上它能帮你安装好可行的环境。

2.对于简单的案例,例如测试文档、简单的框架、简单的功能cursor能快速帮你实现,一旦上了点难度的,可能就得反复调试。    

3.如果能清晰详细的描述想要实现的功能,cursor也能帮你实现,如果不清晰,技术点自己都不知道的情况下,那么就很难成功了。

4.对于C++而言,Cursor很多时候检查不到位,添加了新函数,或者更改了函数接口时,不会自动检查是否定义该函数,是否会造成重定义、接口是否统一等问题,当然也可以通过一次次的反复询问解决这些语言上的问题。

5.如果真想用cursor来写复杂的代码的时候,一定一定要记着自己备份,如果一旦cursor反复调试后实现不了,而你没有备份,那么基本上就宣告失败了(或许也有其他方法,目前还不知道)。因为AI本身有随机性,基本上恢复不了某个阶段的代码。

6.Cursor的试用期是两周,到期后就不能使用claude-3.5-sonnet了,只能使用mini。但是mini基本上都没有上下文而且很“笨”,如果调试操过三次没有成功,基本上就陷入了答非所问的结果。

7.之前有朋友问具体步骤怎么实现了。觉得用多了就有感觉了,下面截图一些我个人的提问和回答内容,不喜勿喷。

问1:给出你想要做的事情,可以先写在md里面。

问2:直接上截图

问3:让cursor推荐语言    

问4:根据cursor提示继续

....

自己查看markdown,觉得差不多了,就可以让cursor写代码了。    

想要个测试代码,问cursor

第一次生成的文件有错误,于是提示它修改:

.....

之后的提问类似,有什么需求就问,有错误就复杂粘贴错误内容,然后就开始一步一步去实现你想要实现的功能。        

8.个人感受,整个过程就是提问和粘贴复 制,虽然感觉很舒服,但是如果遇到cursor反复解决不了的问题,就会陷入无限的修复bug过程中,拆了东墙补西墙的感觉,脑袋啥也没做嗡嗡嗡的。可能还需要学习,多实践找点简单的案例来实践。


来源:实践有限元
UGpython控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-12-13
最近编辑:3小时前
实践有限元
硕士 签名征集中
获赞 0粉丝 0文章 57课程 0
点赞
收藏
作者推荐

三维四面体一、二、三阶叠层有限元实现与精度对比-高斯积分

简述相比于插值基函数有限元,叠层基函数的公式相对更加简单,缺点是实现过程中如果出现问题,很难查找具体原因。本文以霍姆霍兹方程为边值问题,在使用高斯积分的基础上,分别实现基于叠层基函数的一阶、二阶、三阶有限元。过程中一阶、二阶很快成功实现,但是三阶却达不到对应的精度,其结果仅仅比二阶稍微好一点,明显存在问题,但是却无法找到问题所在。所涉及的文章有以下几篇,相关内容也不再赘述。三维四面体三阶有限元实现-泊松方程泊松方程-三维四面体插值基函数有限元实现-高斯积分三维高阶叠层与插值有限元细节对比-霍姆霍兹方程泊松方程三维二阶叠层有限元实现-四面体1.边值问题这里简单给出边值问题,霍姆霍兹方程表达式:2.四面体基函数表达式使用面积坐标获得线性基函数及其梯度表达式:一阶基函数表达式及其梯度:二阶叠层基函数(包括一阶部分的N1~4)及其梯度:其对应的梯度为:三阶基函数(包括二阶部分内容不再展示)及其对应的梯度:3.高斯积分、系数矩阵组装、边界条件加载I.高斯积分方式与对应的积分权重系数表格参考:三维四面体三阶有限元实现-泊松方程。II.系数矩阵组装需要全局映射关系与局部映射关系一一对应。III.叠层基函数的边界条件加载参考:泊松方程三维二阶叠层有限元实现-四面体。4.结果展示一阶结果与理论解析解对比:二阶结果与理论解析解对比:三阶结果与理论解析解对比:三阶的可视化结果:叠层基函数与插值基函数不同阶数精度对比统计:粗略看上述的结论,一阶、二阶、三阶的精度均是正确的,但是详细看会发现,三阶叠层基函数的精度并没有提高多少,这里基本上可以明确是存在问题的,因为三阶叠层精度与对应的插值基函数的三阶精度不在一个量级上,但是在经过大量查找问题后,发现现有知识理解确实找不到其中问题所在,暂时无法解决。总结在实现叠层基函数过程中,二阶稍微简单、但是三阶涉及到棱边顺序相对更加困难,因为相对于插值基函数而言,叠层基函数的高阶更加的难以实现。这里分析三阶叠层有限元存在问题的地方大概率是局部映射关系与全局映射关系的问题,但是以我理解又没有错误,早在之前二维的高阶叠层基函数中也遇到过类似的问题,也是如此结果,看样子确实不得其中要义。对此问题有理解、想法的小伙伴们也欢迎留言讨论。来源:实践有限元

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈