
%
%  update_spl.m  ver 1.1  by Tom Irvine
%

function[cell_array]=update_spl()

            vars = evalin('base', 'whos');
            cell_array = cell(size(vars));

            for i=1:length(vars)

                vars(i).name;

                cell_array{i} ='999';
                if(contains(vars(i).name,'myHandle') || ...
                    contains(vars(i).name,'transmission_loss') || ...
                    contains(vars(i).name,'cylindrical_shell_modal_overlap') || ...
                    contains(vars(i).name,'equipment_shelf_modal_overlap') || ...
                    contains(vars(i).name,'external_to_cylinder_power') || ...
                    contains(vars(i).name,'cylinder_to_cavity_power') || ...
                    contains(vars(i).name,'cylinder_to_shelf_power') || ...
                    contains(vars(i).name,'cavity_to_shelf_power') || ...
                    contains(vars(i).name,'shelf_to_cavity_power') || ...
                    contains(vars(i).name,'cylindrical_shell_modal_dens') || ...
                    contains(vars(i).name,'acoustic_cavity_modal_dens') || ...
                    contains(vars(i).name,'equipment_shelf_modal_dens') || ...
                    contains(vars(i).name,'cylindrical_shell_rad_eff') || ...
                    contains(vars(i).name,'equipment_shelf_rad_eff') || ...
                    contains(vars(i).name,'cylindrical_shell_dlf') || ...
                    contains(vars(i).name,'acoustic_cavity_dlf') || ...
                    contains(vars(i).name,'equipment_shelf_dlf') || ...
                    contains(vars(i).name,'cylinder_to_cavity_clf') || ...
                    contains(vars(i).name,'cylinder_to_shelf_clf') || ...
                    contains(vars(i).name,'cavity_to_shelf_clf') || ...
                    contains(vars(i).name,'shelf_to_cavity_clf') || ...
                    contains(vars(i).name,'cylindrical_shell_energy') || ...
                    contains(vars(i).name,'acoustic_cavity_energy') || ...
                    contains(vars(i).name,'equipment_shelf_energy') || ...
                    contains(vars(i).name,'cylindrical_shell_vel_psd') || ...
                    contains(vars(i).name,'equipment_shelf_vel_psd') || ...
                    contains(vars(i).name,'cylindrical_shell_accel_psd') || ...
                    contains(vars(i).name,'equipment_shelf_accel_psd') || ...
                    contains(vars(i).name,'vname_list') || ...
                    contains(vars(i).name,'vafb_1p') || ...
                    contains(vars(i).name,'velocity_spectrum') || ...
                    contains(vars(i).name,'accel_ps') || ...
                    contains(vars(i).name,'accel_spectrum') || ...
                    contains(vars(i).name,'pink_spectrum') || ...
                    contains(vars(i).name,'force_pink_noise_rms') || ...
                    contains(vars(i).name,'split_psd') || ...
                    contains(vars(i).name,'liftoff_Lwb') || ...
                    contains(vars(i).name,'modal_density') || ...
                    contains(vars(i).name,'radiation_efficiency') || ...
                    contains(vars(i).name,'power_dB') || ...
                    contains(vars(i).name,'vel_ps') || ...
                   contains(vars(i).name,'Dirlik_N') || ...
                   contains(vars(i).name,'Franken_psd') || ...
                   strcmp(vars(i).name,'net_noise_reduction') || ...
                   strcmp(vars(i).name,'external_power_dB') || ...
                   strcmp(vars(i).name,'modal_dens') || ...
                   strcmp(vars(i).name,'modal_density') || ...
                   strcmp(vars(i).name,'power_dB') || ...
                   strcmp(vars(i).name,'radiation_efficiency') || ...
                   strcmp(vars(i).name,'accel_psd') || ...
                   strcmp(vars(i).name,'vel_ps') || ...
                   strcmp(vars(i).name,'rad_eff') || ...
                   strcmp(vars(i).name,'radiation_resistance') || ...
                   strcmp(vars(i).name,'trans_loss_dB') || ...
                   strcmp(vars(i).name,'mode_1') || ...
                   strcmp(vars(i).name,'mode_2') || ...
                   strcmp(vars(i).name,'mode_3') || ...              
                   strcmp(vars(i).name,'mode_4') || ...
                   strcmp(vars(i).name,'mode_5') || ... 
                   strcmp(vars(i).name,'mode_6') || ...           
                   strcmp(vars(i).name,'two_dof_ModeShapes') || ...
                   strcmp(vars(i).name,'stress_th') || ...
                   strcmp(vars(i).name,'nn_max') || ...
                   strcmp(vars(i).name,'nn_mean') || ...
                   contains(vars(i).name,'amp_cycles') || ...
                   contains(vars(i).name,'range_cycles') || ...
                   contains(vars(i).name,'amp_mean_cycles') || ...
                   contains(vars(i).name,'range_cycles_max_min')|| ...
                   strcmp(vars(i).name,'two_dof_mass') ||...
                   strcmp(vars(i).name,'point_mass_matrix') ||...
                   contains(vars(i).name,'Hanning') ||...
                   contains(vars(i).name,'loss_factor') ||...
                   strcmp(vars(i).name,'sz'))       
                   cell_array{i} ='999';
                else    

                    ggg=evalin('base',vars(i).name);
                    sz=size(ggg);
                    mint2=0;
                    try
                        mint2=min(ggg(:,2));
                    catch
                    end

                    try
                        % disp('oct test');
                        [ioct_flag,~]=octave_test(ggg);
    
                        if(sz(2)==2 && mint2>=0 && ioct_flag==1)
                            cell_array{i} = vars(i).name;
                        else
                            cell_array{i} ='999';
                        end
                    catch
                        % warndlg('octave test failed')
                    end    
                end    
            end
            length(vars);
            for i=length(vars):-1:1
                if(contains(cell_array{i},'999'))
                    cell_array(i,:)=[];
                end
            end
