Arrays 在python中使用矢量化使用MxNx3数组执行代数?

Arrays 在python中使用矢量化使用MxNx3数组执行代数?,arrays,vector,scipy,vectorization,linear-algebra,Arrays,Vector,Scipy,Vectorization,Linear Algebra,假设我有一个MxNx3数组A,其中前两个索引指的是点的坐标,最后一个索引(数字“3”)指的是向量的三个分量。e、 g.A[4,7,:]=[1,2,3]表示点(7,4)处的向量为(1,2,3) 现在我需要执行以下操作: Lx = D*ux - (x-xo) Ly = D*uy + (y-yo) Lz = D 其中D,ux,uy,xo,yo都是已知的常数。Lx、Ly和Lz是向量在每个点(x、y)的三个分量(注:x分别是列索引,y分别是行索引)。最大的问题是关于x-xo和y-yo,因为x

假设我有一个MxNx3数组A,其中前两个索引指的是点的坐标,最后一个索引(数字“3”)指的是向量的三个分量。e、 g.A[4,7,:]=[1,2,3]表示点(7,4)处的向量为(1,2,3)

现在我需要执行以下操作:

Lx = D*ux - (x-xo)  
Ly = D*uy + (y-yo)  
Lz = D  
其中D,ux,uy,xo,yo都是已知的常数。Lx、Ly和Lz是向量在每个点(x、y)的三个分量(注:x分别是列索引,y分别是行索引)。最大的问题是关于x-xo和y-yo,因为x和y对于不同的点是不同的。那么,如何使用矢量化代码或其他一些快速方法有效地对MxNx3阵列执行这些操作呢


谢谢

如果要对X和Y值进行操作,应将它们包含在矩阵(或其他矩阵)中,而不是依赖于它们的索引


为此,可以使用一些from Numpy,特别是
Numpy.mgrid

如果要对X和Y值进行操作,应该将它们包含在矩阵(或其他矩阵)中,而不是依赖于它们的索引


为此,可以使用一些from Numpy,特别是
Numpy.mgrid

如果要对X和Y值进行操作,应该将它们包含在矩阵(或其他矩阵)中,而不是依赖于它们的索引


为此,可以使用一些from Numpy,特别是
Numpy.mgrid

如果要对X和Y值进行操作,应该将它们包含在矩阵(或其他矩阵)中,而不是依赖于它们的索引


为此,您可以使用来自Numpy的一些函数,特别是
Numpy.mgrid

您可以使用来自Numpy的
meshgrid
函数:

import numpy as np
M=10
N=10
D=1
ux=0.5
uy=0.5
xo=1
yo=1
A=np.empty((M,N,3))
x=range(M)
y=range(N)
xv, yv = np.meshgrid(x, y, sparse=False, indexing='ij')
A[:,:,0]=D*ux - (xv-xo)
A[:,:,1]=D*uy - (yv-yo) 
A[:,:,2]=D

您可以使用numpy的
meshgrid
功能:

import numpy as np
M=10
N=10
D=1
ux=0.5
uy=0.5
xo=1
yo=1
A=np.empty((M,N,3))
x=range(M)
y=range(N)
xv, yv = np.meshgrid(x, y, sparse=False, indexing='ij')
A[:,:,0]=D*ux - (xv-xo)
A[:,:,1]=D*uy - (yv-yo) 
A[:,:,2]=D

您可以使用numpy的
meshgrid
功能:

import numpy as np
M=10
N=10
D=1
ux=0.5
uy=0.5
xo=1
yo=1
A=np.empty((M,N,3))
x=range(M)
y=range(N)
xv, yv = np.meshgrid(x, y, sparse=False, indexing='ij')
A[:,:,0]=D*ux - (xv-xo)
A[:,:,1]=D*uy - (yv-yo) 
A[:,:,2]=D

您可以使用numpy的
meshgrid
功能:

import numpy as np
M=10
N=10
D=1
ux=0.5
uy=0.5
xo=1
yo=1
A=np.empty((M,N,3))
x=range(M)
y=range(N)
xv, yv = np.meshgrid(x, y, sparse=False, indexing='ij')
A[:,:,0]=D*ux - (xv-xo)
A[:,:,1]=D*uy - (yv-yo) 
A[:,:,2]=D

您是否考虑扩展Mxnx5的矩阵,以便在矩阵中明确地包含x和y值而不是仅仅从索引中获取值?您是否考虑过扩展MxNX5的矩阵,因此,您明确地将X和Y值包含在矩阵中,而不是仅仅从索引中获取值?您是否考虑扩展MxNX5的矩阵,以便在矩阵中明确地包含X和Y值而不是仅仅从索引中获取值?那么你在矩阵中明确地包含X和Y值,而不是仅仅从索引中获取值?