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

相关推荐
王中阳Go1 分钟前
攻克制造业知识检索难题:我们如何用Go+AI打造高可用RAG系统,将查询效率提升600%
人工智能·后端·go
有痣青年2 分钟前
Gemini 3 Flash 技术深度解析:多模态、推理引擎与开发者新特性
人工智能·ai编程·gemini
CodeLinghu3 分钟前
路由:Agent能够根据条件动态决定工作流的下一步
人工智能·microsoft·ai·llm
Felaim7 分钟前
【自动驾驶基础】LDM(Latent Diffusion Model) 要点总结
人工智能·机器学习·自动驾驶
咖啡の猫8 分钟前
Python集合的创建
python·哈希算法·散列表
科技快报9 分钟前
昇思人工智能框架峰会 | 昇思MindSpore MoE模型性能优化方案,提升训练性能15%+
人工智能·性能优化
式51610 分钟前
量子力学基础(二)狄拉克符号与复数向量空间
人工智能·算法·机器学习
视觉&物联智能13 分钟前
【杂谈】-人工智能:助力护士回归人文关怀,而非取而代之
人工智能·深度学习·ai·aigc·agi
Gavin在路上14 分钟前
AI学习之稀疏 MoE+Transformer架构
人工智能·学习·transformer
chenmingwei00015 分钟前
RT-1: ROBOTICS TRANSFORMERFOR REAL-WORLD CONTROL AT SCALE
人工智能