NIntegrate::inumr

詳細

  • このメッセージは,領域(1次元または多次元)のサンプル点に対する被積分関数の値がどれも数値でないときに表示される.
  • Off[message]はメッセージが表示されないようにし,On[message] はメッセージが表示されるようにする.(例: Off[NIntegrate::inumr]

例題

  (2)

被積分関数が数値を持たないパラメータを含んでいるのでエラーが表示される:

パラメータに数値があれば積分は問題なく計算される:

NMaximizeの中でNIntegrateを使用するが,c の数値的な値がなく,繰り返し評価される:

考えられる解決策の一つは,NIntegrateの代りにIntegrateを使うというものである.NMaximizeは入力に対して記号処理が行えるので,この方法は有用である:

記号的な積分が不可能な場合は,別の方法として,NumericQを使ってヘルパー関数 fun を書くことでNIntegrateに与える引数の型を制限する:

記号入力は未評価で返される:

数値入力は評価される:

funNMaximizeを使用しても,警告メッセージなしに評価される: