Parameterübergabe in Matlab |
22.11.2019, 00:55 | Alb | Auf diesen Beitrag antworten » |
Parameterübergabe in Matlab Hallo, Ich möchte die variable eines slider(in val1, val2, val3, val4 abgespeichert) in der Funktion chua_function ganz unten aufrufen. Leider kommt es dazu zu Fehlern. Wie muss ich das machen? Meine Ideen: Hier der Code: function varargout = chaos_simulation_gui(varargin) % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @chaos_simulation_gui_OpeningFcn, ... 'gui_OutputFcn', @chaos_simulation_gui_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT function chaos_simulation_gui_OpeningFcn(hObject, eventdata, handles, varargin) [t,y] = ode45(@chua_function,[0 150],[1 0 0]); axes(handles.axes1); plot3(y(:,1),y(:,2),y(:,3)) = Plot xlabel('D^-^1 Region') ylabel('D^0 Region') zlabel('D^1 Region') grid ... % Choose default command line output for chaos_simulation_gui handles.output = hObject; % Update handles structure guidata(hObject, handles); % --- Outputs from this function are returned to the command line. function varargout = chaos_simulation_gui_OutputFcn(hObject, eventdata, handles) % Get default command line output from handles structure varargout{1} = handles.output; function slider_a_Callback(hObject, eventdata, handles) val1=get(hObject,'value'); set(handles.edit1,'string',num2str(val1)); guidata(hObject,handles); function slider_a_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]); end ... function slider_n_Callback(hObject, eventdata, handles) val4=get(hObject,'value'); set(handles.edit4,'string',num2str(val4)); guidata(hObject,handles); function slider_n_CreateFcn(hObject, eventdata, handles) if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor',[.9 .9 .9]); end function edit1_Callback(hObject, eventdata, handles) value1=get(hObject,'string'); set(handles.text,'value',num2str(value1)); guidata(hObject,handles); function edit1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end ... function edit4_Callback(hObject, eventdata, handles) value4=get(hObject,'string'); set(handles.text,'value',num2str(value4)); guidata(hObject,handles); function edit4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function out = chua_function(t,p) a = 16; % here i want to write a = val1 B = 30; % here i want to write b = val2 m = -1.2; n = -0.7; x = p(1); y = p(2); z = p(3); g = n*x+0.5*(m-n)*(abs(x+1)-abs(x-1)); %St?ckweise Lineare Gleichung der Diode xdot = a*(y-x-g); ydot = x - y+ z; zdot = -B*y; out = [xdot ydot zdot]'; |
|
Verwandte Themen
Die Beliebtesten » |
|
Die Größten » |
|
Die Neuesten » |
|