No BSD License  

Highlights from
Neurocal

image thumbnail
from Neurocal by Zeng Lertmanorat
Simulation describing the electrical activity of nerve cell (neuron) by solving cable equation

Iinstim(name,node,varargin)
function Iinstim(name,node,varargin)
%[Variable, node, amp, dur, delay]
%[Variable, node, StimWaveform]

global zeng

if isempty(zeng.Iinstim)
    stim_num=1;
else
    stim_num=1+length(zeng.Iinstim);
end

if nargin==3 %Stim Waveform
    zeng.Iinstim(stim_num).varnum=name.varnum;
    zeng.Iinstim(stim_num).node=node;
    zeng.Iinstim(stim_num).amp  =varargin{1};
    zeng.Iinstim(stim_num).dur  =0;
    zeng.Iinstim(stim_num).delay=0;
elseif nargin==5 %Square Pulse
    if ~isnumeric(varargin{1})
        zexst('err',['Amplitude of Iinstim(' num2str(stim_num) ') has to be a number !!!, You know?']);
        return
    end
    zeng.Iinstim(stim_num).varnum=name.varnum;
    zeng.Iinstim(stim_num).node=node;
    zeng.Iinstim(stim_num).amp  =varargin{1};
    zeng.Iinstim(stim_num).dur  =varargin{2}/1000; %us->ms
    zeng.Iinstim(stim_num).delay=varargin{3}/1000; %us->ms;
else
    zexst('err','Your Iinstim is bad.')
end

Contact us at files@mathworks.com