Add here a paragraph of the function description.
function [x,y]=mhistplot(n,data) p=size(data,'*') data=data(:) if size(n,'*')==1 then x = linspace(min(data), max(data), n+1)'; else x=n(:) end, n=prod(size(x)); [ind , y] = dsearch(data, x); y=[y;y(n-1)]; nx=maxi(min(15,prod(size(x))-1),1); endfunction set("figure_style","old") load SCI/macros/scicos/lib exec(loadpallibs,-1) %tcur=0;%cpr=list();alreadyran=%f;needstart=%t;needcompile=4;%state0=list(); prot=funcprot();funcprot(0); deff('disablemenus()',' ') deff('enablemenus()',' ') funcprot(prot) load(MODNUM+'/simu/lin_chua_sim/lin_chua_sim.cos') context=scs_m.props("context"); execstr(context); tolerances=scs_m.props.tol; solver=tolerances(6); scs_m.props.context(3)='Nbit=16'; ci=0.66:2e-3:0.68; Nbsampl=1e4; Nbsampl=5e3; z=zeros(size(ci,2),Nbsampl); for j=1:size(ci,2) scs_m.props.context(6)='ci='+string(ci(j)); %scicos_context=struct(); [%scicos_context,ierr]=script2var(scs_m.props.context,%scicos_context); [scs_m,%cpr,needcompile,ok]=do_eval(scs_m,%cpr); [%cpr,%state0_n,needcompile,alreadyran,ok]=do_update(%cpr,%state0,needcompile); %state0=%state0_n; %tcur=0; %cpr.state=%state0; tf=scs_m.props.tf; [state,t]=scicosim(%cpr.state,%tcur,tf,%cpr.sim,'start',tolerances); timer(); y=[]; %tcur=0; for i=1:Nbsampl tf=i*Te; [state,t]=scicosim(%cpr.state,%tcur,tf,%cpr.sim,'run',tolerances); %cpr.state=state; %tcur=tf; Nblock=3; y(1,i)=state("z")(%cpr.sim("zptr")(Nblock):%cpr.sim("zptr")(Nblock+1)-1); Nblock=6; y(2,i)=state("z")(%cpr.sim("zptr")(Nblock):%cpr.sim("zptr")(Nblock+1)-1); end z(j,:)=y(1,:); Tsim=timer();disp('Tsim:'+string(Tsim)); end clear y; k=200; c=zeros(size(ci,2),k+1); for j=1:size(ci,2) [a,b]=mhistplot(k,z(j,:)); c(j,:)=matrix(b,1,k+1); end x=(1:size(ci,2))/size(ci,2); y=(1:k+1)/k; z=c/max(c); set("figure_style","new"); scf(100); plot3d(x,y,z,11,45,'X@Y@Z',[2,2,4])