제 응용 프로그램에서는 행렬 행렬을 운반하는 것이 좋습니다. numpy는 그것을 좋아하지 않기 때문에 배열 작업은 대부분 가볍기 때문에 배열 배열로 끝납니다. 나는 그들에게 아주 만족합니다.배열 배열을 행렬로 변환
그것은 그 다음과 같습니다
그러나
[ [S11hh S11hv] [S12hh S12hv] ]
[ [S11vh S11vv] [S12vh S12vv] ]
S = [ ]
[ [S21hh S21hv] [S22hh S22hv] ]
[ [S21vh S21vv] [S22vh S22vv] ]
(.이는 광학의, 수평 및 수직 편광의 반사와 투과 계수입니다), 내 코드에서 어떤 시점에서 내가 필요 대신의 부분, S를 모두 사용하여 행렬 곱셈을 수행
M = S.dot(L)
L 모습
:
내가 순진M = S.dot(L)
을 실행하면
[ [L1hh L1hv] ]
[ [L1vh L1vv] ]
L = [ ]
[ [L2hh L2hv] ]
[ [L2vh L2vv] ]
은 내가 원하는 것이 아니다 (6 개) 차원에서 뭔가 끝. 배열 내 배열이 있다면 사실 나는 결과가 어떻게 될지 정확히 유사 할 것으로 예상 단지 행렬 :
[ S11hh S11hv S12hh S12hv ]
[ S11vh S11vv S12vh S12vv ]
S = [ S21hh S21hv S22hh S22hv ]
[ S21vh S21vv S22vh S22vv ]
[ L1hh L1hv ]
[ L1vh L1vv ]
L = [ L2hh L2hv ]
[ L2vh L2vv ]
은 그 때 나는 다시 그룹을 할 요소 4 우아한 numpyic는 무엇 4.
에 의해 이 배열에서 행렬을 만드는 방법? 나는 bmat를 시도했지만 bmat는 내가 가지고있는 것에 만족하지 않는다; 어떤 이유로 4D 배열이 아닌, 매트릭스 목록으로 잘 작동합니다.
이것이 내가 처음으로 코드를 작성한 방식이었고, 일단 내가 코드를 조각 내고 옮겨야한다는 것을 깨달았을 때 나는 그 코드에서 벗어났습니다. 한 곳에서만 행렬이 필요합니다. 그리고 내가 말했듯이, bmat는이 작업을 위해 상자 밖으로 나오지 않습니다. – Niriel