Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 Laguerre 다항식 및 x, y 복소수 점 배열의 의사 Vandermonde 행렬 생성

<시간/>

Laguerre 다항식의 의사 Vandermonde 행렬을 생성하려면 Python Numpy에서 thelaguerre.lagvander2d()를 사용합니다. 이 메서드는 의사 Vandermonde 행렬을 반환합니다. 반환된 행렬의 모양은 x.shape + (deg + 1,)입니다. 여기서 마지막 인덱스는 해당하는 Laguerre 다항식의 차수입니다. dtype은 변환된 x와 동일합니다.

매개변수 x, y는 포인트 배열을 반환합니다. 복잡한 요소가 있는지 여부에 따라 dtype이 float64 또는 complex128로 변환됩니다. x가 스칼라이면 1차원 배열로 변환됩니다. 매개변수 deg는 [x_deg, y_deg] 형식의 최대 각도 목록입니다.

단계

먼저 필요한 라이브러리를 가져옵니다 -

numpy를 np로 가져오기 from numpy.polynomial 가져오기 laguerre를 L로

numpy.array() 메서드를 사용하여 동일한 모양의 점 좌표 배열을 만듭니다. -

x =np.array([-2.+2.j, -1.+2.j])y =np.array([1.+2.j, 2.+2.j]) 

배열 표시 -

print("배열1...\n",x)print("\n배열2...\n",y)

데이터 유형 표시 -

print("\nArray1 데이터 유형...\n",x.dtype)print("\nArray2 데이터 유형...\n",y.dtype)

두 어레이의 차원을 확인하십시오 -

print("\n배열1의 치수...\n",x.ndim)print("\n배열2의 치수...\n",y.ndim)

두 배열의 모양을 확인하십시오 -

print("\nArray1의 모양...\n",x.shape)print("\nArray2의 모양...\n",y.shape)

Laguerre 다항식의 의사 Vandermonde 행렬을 생성하려면 Python Numpy에서 thelaguerre.lagvander2d()를 사용하십시오 -

x_deg, y_deg =2, 3print("\n결과...\n",L.lagvander2d(x,y, [x_deg, y_deg]))

import numpy as npfrom numpy.polynomial import laguerre as L# numpy.array() 메서드를 사용하여 동일한 모양의 점 좌표 배열을 만듭니다.x =np.array([-2.+2.j, -1 .+2.j])y =np.array([1.+2.j, 2.+2.j])# 배열 표시print("Array1...\n",x)print("\nArray2 ...\n",y)# 데이터 유형 표시print("\nArray1 데이터 유형...\n",x.dtype)print("\nArray2 데이터 유형...\n",y.dtype)# 치수 확인 두 arrayprint("\nDimensions of Array1...\n",x.ndim)print("\nDimensions of Array2...\n",y.ndim)# 두 arrayprint("\ nShape of Array1...\n",x.shape)print("\nShape of Array2...\n",y.shape)# Laguerre 다항식의 의사 Vandermonde 행렬을 생성하려면 laguerre.lagvander2d( ) 파이썬 Numpyx_deg, y_deg =2, 3print("\nResult...\n",L.lagvander2d(x,y, [x_deg, y_deg]))

출력

Array1... [-2.+2.j -1.+2.j]Array2... [1.+2.j 2.+2.j]Array1 데이터 유형...complex128Array2 데이터 유형.. .complex128배열1의 치수...1배열2의 치수...1배열1의 모양...(2,)배열2의 모양...(2,)결과... [[ 1. +0.j 0. -2. j -2.5 -2.j -4.66666667 +0.33333333j 3. -2.j -4. -6.j -11.5 -1.j -13.33333333 +10.33333333j 5. -8.j -16. -10.j -28.5 +10.j -20.66666667 +39.j ] [ 1. +0.j -1. -2.j -3. +0.j -2.33333333 +3.33333333j 2. -2.j -6. -2.j -6. +6.j 2. +11.33333333j 1.5 -6.j -13.5 +3.j -4.5 +18.j 16.5 +19.j ]]