image thumbnail
from Kirchhoff Vortex Contour Dynamics Simulation by Travis Mitchell
Contour dynamics simulation of an elliptical vortex in 2D inviscid and incompressible flow

ControlString(i_integrator_control, i_pert_control, i_beta_control, i_pert_end_control, i_fit_control, m_2, m_3)
function out_string = ControlString(i_integrator_control, i_pert_control, i_beta_control, i_pert_end_control, i_fit_control, m_2, m_3)
%  Version: 1.0, 19 March 2008
%
%  Produces diagnostic string given control flags

switch i_integrator_control                                            
        case 0                                                      % do no integration
            int_str = 'No integration.';
        case 1
            int_str = 'Single step integration.';
        case 2                                  % integrate in steps, determine safe halt time due to filamentation/fusion      
            int_str = 'Multi-step integration.';
        case 3                                                          % create 'fake data' using predictions of linear theory
            int_str = 'Linear theory predictions.';
        case 4
            int_str = 'Experimental data.';
    end

    switch i_pert_control                                            
        case 0                                                      % no pert, but add noise to avoid fitting singularity problem
            pert_str        = ' No pert.';
        case 1                                                      % Eq. 15b form perturbation
            pert_str        = ' Pert: alpha_m, beta_m.';           
        case 2                                                      % Eq. 16 form perturbation (linearized)
            pert_str        = ' Pert: lin alpha_m.';
        case 3                                                      % Eq. 15a form perturbation
            pert_str        = ' Pert: A_m, B_m.';
    end

    switch i_beta_control
        case 0
            beta_str     = ' Angle: specified.';
        case 1
            beta_str     = ' Angle: growing eig.';
        case 2
            beta_str     = ' Angle: decaying eig.';
    end
    switch i_pert_end_control
        case 0
            trim_str     = ' ';
        case 1
            trim_str     = ' End trimming';
    end
    switch i_fit_control
        case 0
            fit_str     = ' No fitting.';
        case 1
            if m_2 == 0
                fit_str     = ' Linear fit of 1 mode.';
            else
                if m_3 == 0
                    fit_str     = ' Linear fit of 2 modes.';
                else
                    fit_str     = ' Linear fit of 3 modes.';
                end
            end
        case 2
            if m_2 == 0                
                if m_3 >= 0
                    fit_str     = ' Nonlinear fit of 1 mode, a b constant.';
                else
                    fit_str     = ' Nonlinear fit of 1 modes, a b varied.';
                end
            else
                if m_3 >= 0
                    fit_str     = ' Nonlinear fit of 2 modes, a b constant.';
                else
                    fit_str     = ' Nonlinear fit of 2 modes, a b varied.';
                end
            end
    end
    
    out_str = [int_str, pert_str, beta_str, trim_str, fit_str];
    disp(out_str);
    
    
    
    

Contact us at files@mathworks.com