2011年11月15日 星期二

MATLAB GUI 4段晶格


for cir=0:3
for spacing_k=0:0.1:1
 
% COMSOL Multiphysics Model M-file
% Generated by COMSOL 3.5a (COMSOL 3.5.0.603, $Date: 2008/12/03 17:02:19 $)

flclear fem

% COMSOL version
clear vrsn
vrsn.name = 'COMSOL 3.5';
vrsn.ext = 'a';
vrsn.major = 0;
vrsn.build = 603;
vrsn.rcs = '$Name:  $';
vrsn.date = '$Date: 2008/12/03 17:02:19 $';
fem.version = vrsn;

% Import mesh
marr = meshimport('C:\Users\kendrick\Desktop\HyperMesh模型\m1.mphbin');
fem.mesh = marr{1};

switch cir
        case 0
            kx=0;
            ky=0;
            % Constants
                fem.const = {'kx',kx+spacing_k,'ky',ky};
        case 1
            kx=1;
            ky=0;
            % Constants
                fem.const = {'kx',kx,'ky',ky+spacing_k};
        case 2
            kx=1;
            ky=1;
            % Constants
                fem.const = {'kx',kx-spacing_k,'ky',ky};
        case 3
            kx=0;
            ky=1;
            % Constants
                fem.const = {'kx',kx,'ky',ky-spacing_k};
    end
                                 
                                  
                                  
                                  
                                  
                                  

% Solve problem
fem.sol=femeig(fem, ...
               'conjugate','on', ...
               'solcomp',{'w','v','u','V'}, ...
               'outcomp',{'w','v','u','V'}, ...
               'rowscale','off', ...
               'blocksize','auto', ...
               'neigs',50, ...
               'linsolver','spooles');
freq=(0.5*abs(imag(fem.sol.lambda))/pi).';
for num=1:50
    eig_matrix=[eig_matrix;cir+spacing_k,freq(num)];
end

    xlswrite(file_name,eig_matrix) ;
end
end



沒有留言:

張貼留言