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。先除再乘的话,数学逻辑上一样,但是如果一个很小的数,除以一个很大的数,会有舍入误差。所以先乘再除。

相关推荐
啦啦右一4 小时前
杂货铺 | TensorFlow GPU 无法识别问题
人工智能·python·tensorflow
玩转单片机与嵌入式4 小时前
资料共享:可以显示波形的串口调试助手(附赠通信协议)
人工智能·stm32·单片机
Q_Q19632884754 小时前
python+django/flask+vue的高铁火车铁路订票管理系统
spring boot·python·django·flask·node.js·php
南极星10054 小时前
OPENCV(python)--初学之路(十一)
人工智能·python·opencv
自然语5 小时前
完整的 OpenCV 点云可视化版本
人工智能·opencv·计算机视觉
IT_陈寒5 小时前
React 18并发渲染实战:这5个性能陷阱让我浪费了整整一周!
前端·人工智能·后端
辰阳星宇5 小时前
【Agent】rStar2-Agent: Agentic Reasoning Technical Report
人工智能·算法·自然语言处理
再__努力1点5 小时前
【50】OpenCV背景减法技术解析与实现
开发语言·图像处理·人工智能·python·opencv·算法·计算机视觉