미지수의 벡터를 취하고 일반적인 차별화 함수를 적용합니다 . 행렬식은 다음 매트릭스로 주어진다 되도록 :
예를 들어, m=3
and 라고 가정하십시오 n=2
. 그런 다음 (0 기반 색인 사용)
f
그때 의 야곱은
이 도전의 목표는이 야 코비 행렬을 인쇄하는 것입니다.
입력
프로그램 / 기능 입력 개의 양의 정수로서 취해야 m
과 n
의 부품 수를 나타내고, f
와 u
는 각각있다. 입력은 원하는 소스 (stdio, function parameter 등)에서 올 수 있습니다. 당신은 그것들이 수신되는 순서를 지시 할 수 있으며, 이것은 당신의 답변에 대한 입력에 대해 일관성이 있어야합니다 (답에 명시하십시오).
산출
야곱 행렬을 나타내는 것. 이 표현은 야곱 행렬의 모든 요소를 명시 적으로 나타내야하지만, 각 용어의 정확한 형태는 구별되고 무엇이 무엇인지에 대해 모호하지 않고 모든 항목이 논리적 순서로 출력되는 한 정의 된 구현입니다. 행렬을 나타내는 데 사용할 수있는 형식의 예 :
- 외부 목록의 각 항목이 Jacobian의 행에 해당하고 내부 목록의 각 항목이 Jacobian의 열에 해당하는 목록 목록.
- 각 행이 Jacobian의 행이고 행으로 구분 된 각 구분자 항목은 Jacobian의 열에 해당하는 문자열 또는 텍스트 출력입니다.
- 매트릭스의 그래픽 / 비주얼 표현. 예 :
MatrixForm
명령을 사용할 때 Mathematica에 표시되는 것 - 모든 항목이 이미 메모리에 저장되어 있고 쿼리 할 수있는 다른 밀도가 높은 매트릭스 개체입니다 (예 : 생성기 개체를 사용할 수 없음). Mathematica가 내부적으로 Matrix 객체를 나타내는 방법의 예
입력 형식 예 :
- 형태의 문자열
d f_i/d u_j
,i
그리고j
정수입니다. 예 :d f_1/d u_2
.d
및 사이f_1
또는 공백x_2
은 선택 사항입니다. 또한 밑줄도 선택 사항입니다. - 형식의 문자열
d f_i(u_1,...,u_n)/d u_j
또는d f_i(u)/d u_j
. 즉, 기능 컴포넌트의 입력 매개 변수f_i
는 선택 사항이며 명시 적으로 철자하거나 간결한 형식으로 남겨 둘 수 있습니다. - 형식화 된 그래픽 출력. 예 : 식을 평가할 때 Mathematica가 인쇄하는 것
D[f_1[u_,u_2,...,u_n],u_1]
시작 색인 u
과 시작 색인을 선택할 수 있습니다 f
(답변에 지정하십시오). 출력은 원하는 싱크로 올 수 있습니다 (stdio, return value, output parameter 등).
테스트 사례
다음 테스트 사례는 규칙을 사용합니다 m,n
. 인덱스는 0부터 시작합니다.
1,1
[[d f0/d u0]]
2,1
[[d f0/d u0],
[d f1/d u0]]
2 2
[[d f0/d u0, d f0/d u1],
[d f1/d u0, d f1/d u1]]
1,2
[[d f0/d u0, d f0/d u1]]
3,3
[[d f0/d u0, d f0/d u1, d f0/d u2],
[d f1/d u0, d f1/d u1, d f1/d u2],
[d f2/d u0, d f2/d u1, d f2/d u2]]
채점
이것은 코드 골프입니다. 바이트 단위의 가장 짧은 코드가 이깁니다. 표준 허점은 금지되어 있습니다. 원하는 내장 기능을 사용할 수 있습니다.
f=
. R은 함수에서 마지막으로 평가 된 것을 반환하므로v
대신 대신 사용할 수 있습니다return(v)
.