Il complesso prodotto interno ha due diverse definizioni decise dalle convenzioni: o . In BLAS, ho trovato le routine cdotu, zdotu e cdotc, zdotc. Le prime due routine in realtà calcolano (un prodotto interno falso!) E le ultime due routine coniugano il primo vettore nel prodotto interno. Inoltre, da una definizione (coniugato o ), con coniugazione! Inoltre, come sottolineato in un commento, la scelta dei valori principali per le funzioni complesse multivalore può essere dipendente dalla convenzione.ˉ u T v u T ˉ v u T v u v ⟨ u , v ⟩ = ¯ ⟨ v , u ⟩
La mia domanda è: questa complicazione causa un vero pericolo per l'uso dell'aritmetica complessa nell'informatica scientifica? Questo problema è sottolineato dagli autori di deal.ii che suggeriscono di dividere sempre numeri complessi in parte reale e parte immaginaria e usare solo l'aritmetica reale. Ma non ho mai trovato conveniente l'approccio alla scissione. Ad esempio, pensa al PML per le equazioni di Maxwell armoniche nel tempo.
Sembra che la preoccupazione di usare numeri complessi sia prevalente nella maggior parte dei software FEM open source tranne FreeFem ++ e libmesh. Ma anche per le due eccezioni, l'aritmetica complessa è meno testata di quella reale.
La mia ultima domanda è: dovremmo sempre evitare di usare numeri complessi?