微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何评估填充字符串的矩阵?

如何解决如何评估填充字符串的矩阵?

您好,我正在以数值方式求解泊松方程,我必须以特定方式考虑边界,该方式随所考虑的分辨率 (n_x,n_y,n_z) 而变化。例如,对于 n_x,y,z = 4,载荷向量采用以下形式

Load[1,1,1] = "(C__[0,0])*u[0,1]+(E__[0,0])*u[1,1]+(G__[0,0]"
Load[2,1] = "(E__[1,0])*u[2,1]+(G__[1,0]"
Load[3,1] = "(B__[2,0])*u[4,1]+(E__[2,0])*u[3,1]+(G__[2,0]"
Load[1,2,1] = "(G__[1,3,1]+(D__[0,4,1] = "(D__[1,1]+(D__[2,2] = "(C__[0,1])*u[0,2]+(E__[0,1])*u[1,2]"
Load[2,2] = "(E__[1,1])*u[2,2]"
Load[3,2] = "(B__[2,1])*u[4,2]+(E__[2,1])*u[3,2]"
Load[1,2] = "0"
Load[3,2]+(D__[0,2] = "(D__[1,2]+(D__[2,3] = "(C__[0,2])*u[0,3]+(E__[0,2])*u[1,3]+(F__[0,4]"
Load[2,3] = "(E__[1,2])*u[2,3]+(F__[1,4]"
Load[3,3] = "(B__[2,2])*u[4,3]+(E__[2,2])*u[3,3]+(F__[2,4]"
Load[1,3] = "(F__[1,3]+(D__[0,3] = "(D__[1,3]+(D__[2,4]"

其中从 A__ 到 G__ 是矩阵形式的拉普拉斯算子的“对角”分量,u 是具有所需边界的初始猜测,一切都是全局定义的。

我的问题是是否有一种方法可以评估负载

加载 = eval(加载)

或多线程评估以避免 for 循环,我使用 n=100 并且速度非常慢。

谢谢!

编辑:我有一个函数可以为负载向量创建结构,输出一个字符串(我使用了一个 for 循环)

for i in range(1,n_x):
    for j in range(1,n_y):
        for k in range(1,n_z):
            Load[i,j,k] = Function(i,k)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。