function simulieren1_Callback(hObject, eventdata, handles)
% hObject    handle to simulieren1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
%----------------------------------------------------------------------



aopt=19.405; % defaultwerte für aopt,L und f
L=1;
f=1.5e6;
gesamte_Daempfung=str2double(get(handles.aopt,'String'));% Parameter der optischen Übertragungsstrecke(Länge)nehmen aus GUI(edit.box aopt)
c1=power(10,-gesamte_Daempfung/10);       % aopt=19.405 dB --->  c1=0.0115
set_param('lwl_Uebertragungsstrecke/LWL_TransferFcn','Numerator',num2str(c1));% c1 an Block LWL_TransferFcn setzen
% set_param erwartet einen string daher mat2str([c1])!!!!!!! mat2str(c1)
frequencyString=get(handles.f,'String');
set_param('lwl_Uebertragungsstrecke/Signal Generator','Frequency',frequencyString);% frequenz wird gesetzt bzw übernommen

%%% Hier genauso wie bei Rd machen
hObj_C=findall(gcf,'Tag','C')
diffusionkapazitaet_Str_CellArr=get(hObj_C,'String');
C_index=get(hObj_C,'Value')
C_ausgewaehlt=diffusionkapazitaet_Str_CellArr{C_index};% Den ausgewählten Wert bestimmen ...
diffusionkapazitaetsfaktor= 1/C_ausgewaehlt;% die Kapazität in  nf,durch String darf man nicht dividieren daher str2double!!!
set_param('lwl_Uebertragungsstrecke/Lichtsender_LED/Gain','Gain',num2str(diffusionkapazitaetsfaktor));% setzen der Parameter C im Simulink-Modell

%%% 2. Weg, um an die Rd-Daten ranzukommen
hObj_Rd=findall(gcf,'Tag','Rd')
diff_widerstand_Str_CellArr=get(hObj_Rd,'String');
Rd_index=get(hObj_Rd,'Value')
%%% Den ausgewählten Wert bestimmen ...
diff_widerstand_ausgewaehlt=diff_widerstand_Str_CellArr{Rd_index};
differentiellerwiderstandsfaktor= 1/diff_widerstand_ausgewaehlt;
%%% ... und im Simulink-Modell setzen
set_param('lwl_Uebertragungsstrecke/Lichtsender_LED/Gain1','Gain',num2str(differentiellerwiderstandsfaktor));

%%% Hier genauso wie bei Rd machen
hObj_Cs=findall(gcf,'Tag','Cs')
Cs_Str_CellArr=get(hObj_Cs,'String');
Cs_index=get(hObj_Cs,'Value')
Cs_ausgewaehlt=Cs_Str_CellArr{Cs_index};% Den ausgewählten Wert bestimmen ...
speerschichtkapazitaetsfaktor=1/Cs_ausgewaehlt;% die Kapazität in  nf
set_param('lwl_Uebertragungsstrecke/Lichtempfänger_Photodiode/Gain','Gain',num2str(speerschichtkapazitaetsfaktor));

%%% Hier genauso wie bei Rd machen
hObj_Rb=findall(gcf,'Tag','Rb')
Rb_Str_CellArr=get(hObj_Rb,'String');
Rb_index=get(hObj_Rb,'Value')
Rb_ausgewaehlt=Rb_Str_CellArr{Rb_index};% Den ausgewählten Wert bestimmen ...
%%% Hier genauso wie bei Rd machen
hObj_RL=findall(gcf,'Tag','RL')
RL_Str_CellArr=get(hObj_RL,'String');
RL_index=get(hObj_RL,'Value')
RL_ausgewaehlt=RL_Str_CellArr{RL_index};% Den ausgewählten Wert bestimmen ...
widerstandsfaktor=1/(Rb_ausgewaehlt+RL_ausgewaehlt);
set_param('lwl_Uebertragungsstrecke/Lichtempfänger_Photodiode/Gain','Gain1',num2str(widerstandsfaktor));
set_param('lwl_Uebertragungsstrecke',[]);