I am quite confused. I have a function say like this:
function [output] = TLU( inputs, weights, threshold )
activationMagnitude = sum(weights.*inputs)
if activationMagnitude > threshold
output = true;
output = false;
But when I use class(ans) it always shows a char data type - despite me specifying the output as either true or false!
Why is this?
There's nothing wrong with your function, you can just do it more concisely
function output = TLU( inputs, weights, threshold )
output = sum(weights.*inputs) > threshold;
y = TLU([1 2 3], [ 4 5 6 ], 100)
But of course then class(ans) gives char (because ans is the string 'logical'), but this has nothing to do with the class returned by your function.