📄 als2004multi.m
字号:
function edit_tolunis_Callback(hObject, eventdata, handles)
% hObject handle to edit_tolunis (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit_tolunis as text
% str2double(get(hObject,'String')) returns contents of edit_tolunis as a double
smod= str2num(get(hObject,'String'));
if smod==1,
smod=1.0001;
end
assignin('base','smod',smod);
evalin('base','als_opt.unimod.smod=smod;');
evalin('base','clear smod');
% *************************************************************************
% closure
% *************************************************************************
% --- Executes on button press in check_clos.
function check_clos_Callback(hObject, eventdata, handles)
% hObject handle to check_clos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of check_clos
closure=get(hObject,'Value');
if closure==1;
set(handles.radio_cclos,'enable','on');
set(handles.radio_sclos,'enable','on');
else
set(handles.check_vclos,'enable','off','value',0);
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
set(handles.radio_cclos,'enable','off','value',0);
set(handles.radio_sclos,'enable','off','value',0);
set(handles.text_nclos,'enable','off');
set(handles.popup_nclos,'enable','off','value',1);
set(handles.text_1clos,'enable','off');
set(handles.edit_1clos,'enable','off','string',' ');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_1closcond,'enable','off');
set(handles.popup_1closcond,'enable','off','value',1);
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.check_1clos,'enable','off','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.text_1spclos,'enable','off');
set(handles.edit_1spclos,'enable','off','string',' ');
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
evalin('base','als_opt=rmfield(als_opt,''closure'');');
end;
assignin('base','closure',closure);
evalin('base','als_opt.closure.closure=closure;');
evalin('base','clear closure');
vc=0;
assignin('base','vc',vc);
evalin('base','als_opt.closure.vc=vc;');
evalin('base','clear vc');
% --- Executes on button press in radio_cclos.
function radio_cclos_Callback(hObject, eventdata, handles)
% hObject handle to radio_cclos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of radio_cclos
dc=1;
set(handles.radio_sclos,'enable','off','value',0);
set(handles.text_nclos,'enable','on');
set(handles.popup_nclos,'enable','on','value',1);
set(handles.text_1clos,'enable','off');
set(handles.edit_1clos,'enable','off','string',' ');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_1closcond,'enable','off');
set(handles.popup_1closcond,'enable','off','value',1);
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.check_1clos,'enable','off','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.text_1spclos,'enable','off');
set(handles.edit_1spclos,'enable','off','string',' ');
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
set(handles.check_vclos,'enable','off');
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
dim=evalin('base','min(size(als_opt.iniesta))');
assignin('base','dim',dim);
matc=evalin('base','als_opt.multi.matc');
assignin('base','matc',matc);
matr=evalin('base','als_opt.multi.matr');
assignin('base','matr',matr);
evalin('base','als_opt.closure.tclos1(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.tclos2(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.sclos1(1:matc,1:dim)=zeros(matc,dim);');
evalin('base','als_opt.closure.sclos2(1:matc,1:dim)=zeros(matc,dim);');
evalin('base','als_opt.closure.iclos(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.iclos1(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.iclos2(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.vclos1(1:matc)=zeros(1,matc);');
evalin('base','als_opt.closure.vclos2(1:matc)=zeros(1,matc);');
assignin('base','dc',dc);
evalin('base','als_opt.closure.dc=dc;');
evalin('base','clear dc dim matr matc');
% --- Executes on button press in radio_sclos.
function radio_sclos_Callback(hObject, eventdata, handles)
% hObject handle to radio_sclos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of radio_sclos
dc=2;
set(handles.radio_cclos,'enable','off','value',0);
set(handles.text_nclos,'enable','on');
set(handles.popup_nclos,'enable','on','value',1);
set(handles.text_1clos,'enable','off');
set(handles.edit_1clos,'enable','off','string',' ');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_1closcond,'enable','off');
set(handles.popup_1closcond,'enable','off','value',1);
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.check_1clos,'enable','off','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.text_1spclos,'enable','off');
set(handles.edit_1spclos,'enable','off','string',' ');
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
set(handles.check_vclos,'enable','off');
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
dim=evalin('base','min(size(als_opt.iniesta))');
assignin('base','dim',dim);
matc=evalin('base','als_opt.multi.matc');
assignin('base','matc',matc);
matr=evalin('base','als_opt.multi.matr');
assignin('base','matr',matr);
evalin('base','als_opt.closure.tclos1(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.tclos2(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.sclos1(1:matr,1:dim)=zeros(matr,dim);');
evalin('base','als_opt.closure.sclos2(1:matr,1:dim)=zeros(matr,dim);');
evalin('base','als_opt.closure.iclos(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.iclos1(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.iclos2(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.vclos1(1:matr)=zeros(1,matr);');
evalin('base','als_opt.closure.vclos2(1:matr)=zeros(1,matr);');
assignin('base','dc',dc);
evalin('base','als_opt.closure.dc=dc;');
evalin('base','clear dc dim matr matc');
% --- Executes during object creation, after setting all properties.
function popup_nclos_CreateFcn(hObject, eventdata, handles)
% hObject handle to popup_nclos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: popupmenu controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
llista(1)={'select...'};
llista(2)={'0'};
llista(3)={'1'};
llista(4)={'2'};
set(hObject,'string',llista)
% --- Executes on selection change in popup_nclos.
function popup_nclos_Callback(hObject, eventdata, handles)
% hObject handle to popup_nclos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: contents = get(hObject,'String') returns popup_nclos contents as cell array
% contents{get(hObject,'Value')} returns selected item from popup_nclos
form_iclos=get(hObject,'Value')-2;
if form_iclos == 1;
set(handles.text_1clos,'enable','on');
set(handles.edit_1clos,'enable','on');
set(handles.text_1closcond,'enable','on');
set(handles.popup_1closcond,'enable','on','value',1);
set(handles.text_1spclos,'enable','on');
set(handles.edit_1spclos,'enable','on');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
set(handles.check_1clos,'enable','on','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.check_vclos,'enable','on','value',0);
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
elseif form_iclos==2
warndlg('Warning: there should not be common species to the two closures','WARNING!!');
set(handles.text_1clos,'enable','on');
set(handles.edit_1clos,'enable','on');
set(handles.text_1closcond,'enable','on');
set(handles.popup_1closcond,'enable','on','value',1);
set(handles.text_1spclos,'enable','on');
set(handles.edit_1spclos,'enable','on');
set(handles.text_2clos,'enable','on');
set(handles.edit_2clos,'enable','on');
set(handles.text_2closcond,'enable','on');
set(handles.popup_2closcond,'enable','on','value',1);
set(handles.text_2spclos,'enable','on');
set(handles.edit_2spclos,'enable','on');
set(handles.check_1clos,'enable','on','value',0);
set(handles.check_2clos,'enable','on','value',0);
set(handles.check_vclos,'enable','on','value',0);
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
elseif form_iclos==0
set(handles.text_1clos,'enable','off');
set(handles.edit_1clos,'enable','off','string',' ');
set(handles.text_1closcond,'enable','off');
set(handles.popup_1closcond,'enable','off','value',1);
set(handles.text_1spclos,'enable','off');
set(handles.edit_1spclos,'enable','off','string',' ');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
set(handles.check_1clos,'enable','off','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.check_vclos,'enable','off','value',0);
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
else
set(handles.text_1clos,'enable','off');
set(handles.edit_1clos,'enable','off','string',' ');
set(handles.text_1closcond,'enable','off');
set(handles.popup_1closcond,'enable','off','value',1);
set(handles.text_1spclos,'enable','off');
set(handles.edit_1spclos,'enable','off','string',' ');
set(handles.text_2clos,'enable','off');
set(handles.edit_2clos,'enable','off','string',' ');
set(handles.text_2closcond,'enable','off');
set(handles.popup_2closcond,'enable','off','value',1);
set(handles.text_2spclos,'enable','off');
set(handles.edit_2spclos,'enable','off','string',' ');
set(handles.check_1clos,'enable','off','value',0);
set(handles.check_2clos,'enable','off','value',0);
set(handles.check_vclos,'enable','off','value',0);
set(handles.text_vclos1,'enable','off');
set(handles.edit_vclos1,'enable','off','string',' ');
set(handles.text_vclos2,'enable','off');
set(handles.edit_vclos2,'enable','off','string',' ');
end
matr=evalin('base','als_opt.multi.matr');
matc=evalin('base','als_opt.multi.matc');
curr_cmat=evalin('base','als_opt.multi.curr_cmat');
curr_smat=evalin('base','als_opt.multi.curr_smat');
iclos=evalin('base','als_opt.closure.iclos');
if evalin('base','als_opt.multi.ccons')==1 | evalin('base','als_opt.multi.scons')==1
if evalin('base','als_opt.closure.dc')==1
iclos(1,[1:matc])=form_iclos;
elseif evalin('base','als_opt.closure.dc')==2
iclos(1,[1:matr])=form_iclos;
end
else
if evalin('base','als_opt.closure.dc')==1
iclos(1,curr_cmat)=form_iclos;
elseif evalin('base','als_opt.closure.dc')==2
iclos(1,curr_smat)=form_iclos;
end
end
assignin('base','iclos',iclos);
evalin('base','als_opt.closure.iclos=iclos;');
evalin('base','clear iclos matc matr curr_smat curr_cmat');
% --- Executes during object creation, after setting all properties.
function edit_1clos_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit_1clos (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc
set(hObject,'BackgroundColor','white');
else
set(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'));
end
function edit_1clos_Callback(hObject, eventdata, handles)
% hObject handle to edit_1clos (see GCBO)
% eventdata res
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -