アプリ版:「スタンプのみでお礼する」機能のリリースについて

Pythonでスカラー値をベクトルで微分する書き方を教えて下さい。
例えば、
a = np.array([1.0,2.0,3.0])
b = np.array([[1.0,2.0,3.0],[4.0,5.0,6.0],[7.0,8.0,9.0]])
でスカラー値
c = np.dot(a, np.dot(b, a))

ベクトルaで偏微分する書き方です。

質問者からの補足コメント

  • 書き方が悪くて申し訳ないです。
    aが3次元のベクトル変数で、c(スカラー)をaで偏微分するという意味です。

    No.1の回答に寄せられた補足コメントです。 補足日時:2024/03/19 18:04
  • 書き方が悪くて申し訳ないです。
    aは変数で、結果を確認するために後で、aに1,0,2.0,3.0を代入するという意味です。
    手計算で計算すると、結果は、(44, 68, 92)になると思います。
    本当は、aが100次元のものを計算したかったのですが、一応自動で計算してくれるプログラムは
    作ってみて正しい結果は出力されるのですが、N=100の3重ループを回すことになり、時間が
    かかってしまうので、もっと良い書き方がないかを3次元の場合で聞いています。

    No.2の回答に寄せられた補足コメントです。 補足日時:2024/03/20 11:56

A 回答 (3件)

> aは変数で、結果を確認するために後で、aに1,0,2.0,3.0を代入するという意味です。


> 手計算で計算すると、結果は、(44, 68, 92)になると思います。
> 本当は、aが100次元のものを計算したかったのですが、一応自動で計算してくれるプログラムは
> 作ってみて正しい結果は出力されるのですが、N=100の3重ループを回すことになり、時間が
> かかってしまうので、もっと良い書き方がないかを3次元の場合で聞いています。

何、こういう事?

https://www.ideone.com/gbjI68
    • good
    • 0
この回答へのお礼

sympyを使ってこんなに簡単に書けてしまうのですね!!
大変、勉強になりました。
ありがとうございました。

お礼日時:2024/03/20 18:26

これの事だろ?



【徹底解説】スカラーのベクトルによる微分の定義:
https://academ-aid.com/math/def-scalar-vector-diff

ただし、この質問はおかしい。

> aが3次元のベクトル変数で

「変数」か?本当に?

> a = np.array([1.0,2.0,3.0])

これって定数じゃね?
定数を微分すると(ry
この回答への補足あり
    • good
    • 0

微分は関数に対して行なうものですが


この質問はどういう意味でしょう?

ベクトルが多項式の係数になってるとか???
この回答への補足あり
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A