python数值误差

最近在用fenics框架跑有限元代码,其中有一个部分是把在矩阵里定义的初始值,赋值到有限元空间里,这就涉及到了初始矩阵和有限元空间坐标的转化,部分代码如下

python 复制代码
for i in range(len(dof_coordinates)):
    #     x, y = dof_coordinates[i]
        #原本的区间是0到physical_length的,根据num_grids_per_axis长度进行缩放.
        # ix, iy = min(int(x / physical_length * (num_grids_per_axis - 1)), num_grids_per_axis - 1), min(int(y / physical_length * (num_grids_per_axis - 1)), num_grids_per_axis - 1)
        ix, iy = min(int(x * (num_grids_per_axis - 1) / physical_length), num_grids_per_axis - 1), min(
            int(y * (num_grids_per_axis - 1) / physical_length), num_grids_per_axis - 1)

这里有一点需要注意:

x要先和num_grids_per_axis相乘,然后再除以physical_length。先除再乘的话,数学逻辑上一样,但是如果一个很小的数,除以一个很大的数,会有舍入误差。所以先乘再除。

相关推荐
初九之潜龙勿用6 分钟前
在openEuler操作系统基础上实现机器学习开发以及openEuler优势分析
人工智能·机器学习
秋刀鱼 ..7 分钟前
【IEEE出版】第五届高性能计算、大数据与通信工程国际学术会议(ICHBC 2025)
大数据·人工智能·python·机器人·制造·新人首发
小王毕业啦16 分钟前
2007-2024年 地级市-公共数据开放DID
大数据·人工智能·数据挖掘·数据分析·数据统计·社科数据·实证数据
飞Link28 分钟前
【轻量拓展区】网络 QoS 与带宽、延迟、抖动:AI 推理的性能瓶颈
开发语言·网络·人工智能
南极星100543 分钟前
OPENCV(python)--初学之路(十四)哈里斯角检测
人工智能·opencv·计算机视觉
咚咚王者1 小时前
人工智能之数据分析 Pandas:第九章 性能优化
人工智能·数据分析·pandas
Acrel150003531381 小时前
重构能源管理:Acrel EMS 3.0 让降本增效成为底层逻辑
大数据·人工智能
测试19981 小时前
软件测试之压力测试
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·压力测试
Swizard1 小时前
极限瘦身:将 Python AI 应用从 100MB 砍到 30MB
java·python·ai·移动开发
编织幻境的妖1 小时前
Python代码性能优化工具与方法
开发语言·python·性能优化