资源简介

蒙特卡洛模拟光子在组织中的运动 matlab,内有详细的蒙特卡洛模拟光子在组织中的运动内有详细的蒙特卡洛模拟光子在组织中的运动

资源截图

代码片段和文件信息

% Matlab Monte Carlo Simulation Tool (MMCST)
% Initialize the input structure for program MC (v1.1)
%
% input = InitializeInput(inputfilename)
% inputfilename: the file contains the input parameters for Monte Carlo
% Simulation
% input: the data structure which can be used as the input in program MC
%        details about the fields of input:
%               input.np: number of photon
%               input.dzinput.drinput.da: the grid size in z r and alpha
%               dimension
%               input.nzinput.nrinput.na: the number of grids in three
%               dimensions
%               input.nl: number of layers
%               input.n_aboveinput.n_below: the refractive index of the 
%               two ambients
%               input.layers[m].n: the refractive index of layer m
%               input.layers[m].mua: mua of the layer m
%               input.layers[m].mus: mus of the layer m
%               input.layers[m].g: anitroscopy of layer m
%               input.layers[m].z0 and z1: the beginning and ending z
%               coordinates of layer m
%               input.layers[m].cos_crit0 and cos_crit1: the cosines of the
%               critical angles of the two boundaries of layer m
% Also see: MC


% Author: Qiang Bo
% Last revised: 10/05/2005

function [input] = InitializeInput(inputfilename)

run(inputfilename); % load the input parameters
% data structure for one layer
layer = struct(‘n‘[]... % refractive index
               ‘mua‘[]... % absorption coefficient
               ‘mus‘[]... % scattering coefficient
               ‘g‘[]... % anisotropy
               ‘z0‘[]... % z coordinate of upper boundary
               ‘z1‘[]... % z coordinate of lower boundary
               ‘cos_crit0‘[]... % cosine of critical angle for upper boundary
               ‘cos_crit1‘[]... % cosine of critical angle for lower boundary
               );
% Initialize data structure for multiple layers and set their values
% according to input
layers = repmat(layer1nl);
for ilayer = 1:nl
    z1 = sum(d(1:ilayer));
    z0 = z1-d(ilayer);
    n0 = n(ilayer);
    n1 = n(ilayer+1); % This is actually the current layer‘s n. 
                            % Remember there are (nl+2) elements in n.
    n2 = n(ilayer+2);
    if (n1 > n0)
        cos_crit0 = sqrt(1-(n0^2)/(n1^2));
    else
        cos_crit0 = 0;
    end
    if (n1 > n2)
        cos_crit1 = sqrt(1-(n2^2)/(n1^2));
    else
        cos_crit1 = 0;
    end
    layers(ilayer).n = n1;
    layers(ilayer).mua = mua(ilayer);
    layers(ilayer).mus = mus(ilayer);
    layers(ilayer).g = g(ilayer);
    layers(ilayer).z0 = z0;
    layers(ilayer).z1 = z1;
    layers(ilayer).cos_crit0 = cos_crit0;
    layers(ilayer).cos_crit1 = cos_crit1;
end
% data structure for input
input = struct(‘np‘np... % number of photons to be simulated
               ‘dz‘dz... % z grid separation
               ‘dr‘dz... % r grid 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3496  2005-10-05 21:47  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\InitializeInput.m

     文件       1012  2005-10-18 17:02  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\inputdatafile_1.m

     文件       1260  2005-10-18 16:59  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\MC.m

     文件     765193  2005-10-05 21:11  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\MC_dll.dll

     文件       2906  2005-10-05 21:11  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\MC_dll.h

     文件       1755  2005-10-18 17:02  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\ProcessOutput.m

     文件        717  2005-10-18 17:25  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\readme.m

     文件        617  2005-10-18 17:14  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll\test_MC.m

     文件         55  2018-08-27 11:33  蒙特卡洛模拟光子在组织中的运动 matlab\【源码使用必读】.url

     目录          0  2018-08-29 23:27  蒙特卡洛模拟光子在组织中的运动 matlab\MC_dll

     目录          0  2018-08-29 23:29  蒙特卡洛模拟光子在组织中的运动 matlab

----------- ---------  ---------- -----  ----

               777011                    11


评论

共有 条评论