[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
## Re: How to force single precision (32bit) math ? (Octave crash on mixed

**From**: |
Mike Miller |

**Subject**: |
Re: How to force single precision (32bit) math ? (Octave crash on mixed 32/64bit math) |

**Date**: |
Mon, 26 Dec 2016 11:43:44 -0800 |

**User-agent**: |
NeoMutt/20161126 (1.7.1) |

On Sun, Dec 25, 2016 at 22:17:26 -0800, hale812 wrote:
>* when simulating IIR filter based on biquads (for DSP) I try using standard*
>* filter toolbox.*
>* The problem is that it operates well only with standard double precision*
>* (64bit) math.*
>* *
>* And in the DSP is based on 32bit biquad filters. The ultra-precise 64bit*
>* coefficients just give wrong result when truncated to 32bit.*
>* *
>* When I try to convert the variables and the resulting SOS coeff. matrix to*
>* single(), OCTAVE crashes without throwing a message.*
That sounds like a problem, can you show some example code that Octave
crashes on for you?
>* I suspect, that is caused by mixing 32bit and 64 bit data.*
>* *
>* Seems the most straightforward solution would be *forcing* all the math in*
>* the session to single precision.*
>* Is it possible*
In general, all numbers in Octave are double precision by default.
Explicitly converting a value to single is supposed to take precedence.
Operations that combine a single and a double are supposed to compute in
single precision.
There may be some functions that don't, and maybe this should be fixed.
Again if you can provide a specific example showing an operation or
function that takes in single values and returns a double, we can help.
--
mike