Кто-нибудь знает, существует ли математический артефакт в gnuplot (для окон), который воспроизводит дельту Кронекера? В качестве примера (взято из фортрана): 0 ^ (i-j) дает 1, если i = j, 0 в противном случае, поскольку 0 ^ (любое число, отличное от нуля) = 0, но 0 ^ 0 = 1 в фортране; к сожалению, gnuplot дает 0 во всех случаях, поэтому мне нужно искать по-другому. Я пробовал (1.e-15)^0, что должно дать 1 (в то время как 1.e-15^(любое другое число практически равно 0)), но затем я получаю сообщение "нецелое число передано логическому оператору" . Аналогично с 0^(1.e-15). Есть идеи ?
Если i
и j
целые числа, то (i==j)
должно быть достаточно. Если вам нужно обеспечить преобразование в реальные значения, вы можете обернуть его real(i==j)
, чтобы получить 0,0 или 1,0.
Ответ @Ethans - прямой путь.
Но почему ваша попытка не работает?
0^(i-j)
не работает, потому что ^
является оператором "побитовое исключающее ИЛИ". Возведение в степень равно **
, и я бы взял абсолютное значение:
0**abs(i-j)
Смотрите help operators binary
.