// This GUI file is generated by guibuilder version 4.2.1
//////////
f=figure('figure_position',[362,4],'figure_size',[870,744],'auto_resize','on','background',[33],'figure_name','Graphic window number %d','dockable','off','infobar_visible','off','toolbar_visible','off','menubar_visible','off','default_axes','on','visible','off');
//////////
// Isnaini 
//input dx = maksimal 9
handles.dummy = 0;
handles.d=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.7906131,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Densitas U235 (N)','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','d','Callback','')
handles.InputD=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.7880543,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','InputD','Callback','')
handles.D=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.7110516,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Koefisien difusi (D)','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','D','Callback','')
handles.inputDia=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.7190045,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','inputDia','Callback','')
handles.obj5= newaxes();handles.obj5.margins = [ 0 0 0 0];handles.obj5.axes_bounds = [0.4687179,0.1095475,0.5235897,0.7526697];
handles.inputdx=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.6399548,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','inputdx','Callback','')
handles.n=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.5519285,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Axial Teras (x)','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','n','Callback','')
handles.inputn=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.570905,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','inputn','Callback','')
handles.tebakfluks=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.472367,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Tebakan Fluks awal','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','tebakfluks','Callback','')
handles.inputf0=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.4918552,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','inputf0','Callback','')
handles.tebakank=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.3928054,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Tebakan k_eff awal','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','tebakank','Callback','')
handles.inputtebakank=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.2803846,0.4128054,0.1062821,0.0501357],'Relief','default','SliderStep',[0.01,0.1],'String','','Style','edit','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','inputtebakank','Callback','')
handles.enter=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0689103,0.1970588,0.3108974,0.0904977],'Relief','default','SliderStep',[0.01,0.1],'String','ENTER','Style','pushbutton','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','enter','Callback','enter_callback(handles)')
handles.exit=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','center','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0689103,0.0748869,0.3108974,0.0904977],'Relief','default','SliderStep',[0.01,0.1],'String','EXIT','Style','pushbutton','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','exit','Callback','exit_callback(handles)')
handles.dx=uicontrol(f,'unit','normalized','BackgroundColor',[-1,-1,-1],'Enable','on','FontAngle','normal','FontName','Tahoma','FontSize',[12],'FontUnits','points','FontWeight','normal','ForegroundColor',[-1,-1,-1],'HorizontalAlignment','left','ListboxTop',[],'Max',[1],'Min',[0],'Position',[0.0085792,0.6314901,0.1794872,0.0669231],'Relief','default','SliderStep',[0.01,0.1],'String','Interval (dx)','Style','text','Value',[0],'VerticalAlignment','middle','Visible','on','Tag','dx','Callback','')


f.visible = "on";


//////////
// Callbacks are defined as below. Please do not delete the comments as it will be used in coming version
//////////








function enter_callback(handles)
v = 2.43; //kecepatan reaksi fisi
a = 484; //micro-crossection absorpsi U-235
f = 312; //micro-fission U-235
D=strtod(handles.inputDia.string);
Densitas=strtod(handles.InputD.string);
dx=strtod(handles.inputdx.string);
n=strtod(handles.inputn.string);
f0=strtod(handles.inputf0.string);
k=strtod(handles.inputtebakank.string);
ai = Densitas*a; //sigma_ai
fi = Densitas*f; //sigma_fi
m  = v*fi; //v_sigma_fi


x  = 1:dx:n;
al = D/dx;  //alpha   
be = (2*D/dx)+(ai*dx); //beta  
j = length(x);
nOnes = ones(j,1) ;
z = diag(be * nOnes, 0)- diag(nOnes(1:j-1), -al)- diag(nOnes(1:j-1), al)
y=inv(z)        //invers matrix


for i=1:length(x)
    f(i,1) =f0;
end
for i=1:length(x)
    s(i,1) = (m*f(i,1)*dx)/k;
end
fn=y*s;
Fa = sum(f)*m;   
    Fi = sum(fn)*m;    
    ka=k*Fi/Fa;    
    c=abs((ka-k)/(ka+k));

for i=1:j
    ff=fn;
    if c > 0.1
        s = (m*ff*dx)/k;   
        fn = y*s
        Fa = sum(ff)*m;  
        Fi = sum(fn)*m;    
        ka=k*Fi/Fa;
        c=abs((ka-k)/(ka+k));
    end
    
end


plot(x,ff,'g--', x,fn, 'b--')
xlabel('x (m)')
ylabel('Fluks')
legend ("fluks n=1", "fluks konvergen")
title('Grafik Distribusi Fluks','fontsize',7,'fontname','Arial')
//Write your callback for  enter  here

endfunction


function exit_callback(handles)
//Write your callback for  exit  here
close;5



endfunction


