复合叶片分析和设计

免费下载用于复合叶片分析和设计的软件的matlab代码%% clear all variables and close files/figuresclear all;close('all');fclose('all');format compact;%% set the Co-Blade versionSIM.version = '1.20.00-dcs';%% add paths to the

应用介绍

免费下载用于复合叶片分析和设计的软件的matlab代码

%% clear all variables and close files/figures

clear all;

close('all');

fclose('all');

format compact;

%% set the Co-Blade version

SIM.version = '1.20.00-dcs';

%% add paths to the source code

SIM.rootDir     = pwd; 

SIM.sourceDir   = [SIM.rootDir filesep 'Source'];

SIM.airfoilDir  = [SIM.rootDir filesep 'Airfoil_Data'];

SIM.materialDir = [SIM.rootDir filesep 'Material_Data'];

SIM.laminateDir = [SIM.rootDir filesep 'Laminate_Data'];

SIM.optimDir    = [SIM.rootDir filesep 'Optimization_Data'];

% NOTE: comment out the addpath commands before compiling

addpath( SIM.sourceDir )

addpath([SIM.sourceDir filesep 'consolidator'])

addpath([SIM.sourceDir filesep 'dispCorrectionFactor'])

addpath([SIM.sourceDir filesep 'export_fig'])

addpath([SIM.sourceDir filesep 'polygeom'])

addpath([SIM.sourceDir filesep 'psopt'])

%% set debugging breakpoints

% dbstop in structOptimize.m at 453

% dbstop in structAnalysis.m at 332

%% Read the list of active input files

fid = fopen([SIM.rootDir filesep 'Active_Input_Files.inp'], 'r');

if fid == -1

    error(['ERROR: Could not locate and open file ' [SIM.rootDir filesep 'Active_Input_Files.inp']]);

end

inpList = textscan(fid,'%s');

fclose(fid);

SIM.inpFile = inpList{:};

nInpFiles   = numel(SIM.inpFile);

SIM.case    = cell(nInpFiles, 1);

for iSIM = 1:nInpFiles

    [pathstr SIM.case{iSIM} ext] = fileparts(SIM.inpFile{iSIM});

end

%% main loop that sequentially executes the active input files

for iSIM = 1:nInpFiles 

    fprintf(1, 'Executing case %s with Co-Blade v%s.\n', SIM.inpFile{iSIM}, SIM.version);

    

    clear ANLS OPT ENV BLADE WEB OUT MATS AF Coord % clear data structures from previous input files (don't want to accidentally keep any old values)

         [ANLS OPT ENV BLADE WEB OUT MATS AF Coord] = CoBlade_init(iSIM, SIM); 

    %% Define the laminate data, either by optimization, or read data from the laminate input files

    if OPT.OPTIMIZE

        WEB.inbStn = OPT.INB_STN .* ones(WEB.NUM_WEBS, 1);  % all the webs begin and end at blade stations INB_STN and OUB_STN

        WEB.oubStn = OPT.OUB_STN .* ones(WEB.NUM_WEBS, 1);

        % Determine the laminate data from optimization routine

        [WEB SECNODES LamData] = structOptimize(iSIM, SIM, ANLS, OPT, ENV, BLADE, WEB, AF, MATS, Coord, OUT);

    else

        % Read the pre-defined laminate data from the laminate input files

        [SECNODES LamData] = readLaminateData(SIM, BLADE, WEB, MATS);

    end

    %% execute the structural analysis

    [Panel StrProps AppLoads ResLoads Disp NormS ShearS Buckle MidPlane LaminaSS Modes] ...

     = structAnalysis(iSIM, SIM, ANLS, ENV, BLADE, WEB, MATS, LamData, AF, SECNODES, Coord);

     

    %% write output files

    if OPT.OPTIMIZE || OPT.OPT_PITAXIS

        % create a copy of the main input file, but update any parameters that were changed/created by the optimization routine                 

        if OPT.OPTIMIZE

            BLADE.strFile = cell(BLADE.NUM_SEC, 1); % overwrite this variable with the new names

            for n = 1:BLADE.NUM_SEC

                BLADE.strFile{n} = [SIM.case{iSIM} '_OPT_' num2str(n) '.lam'];

            end 

        end

        writeInpFileNewMain(iSIM, SIM, OPT, BLADE, WEB);

    end

    

    if OUT.PROPS_FILE

        writeOupFileProps(iSIM, SIM, BLADE, StrProps, OUT);

    end   

    if OUT.LOAD_DSP_FILE

        writeOupFileLoads(iSIM, SIM, BLADE, AppLoads, ResLoads, Disp, OUT);

    end

    if OUT.PANEL_FILE

        writeOupFilePanel(iSIM, SIM, BLADE, WEB, SECNODES, Panel, NormS, ShearS, Buckle, OUT);

    end

    if OUT.LAMINA_FILE

        writeOupFileLamina(iSIM, SIM, BLADE, WEB, SECNODES, Panel, Buckle, LaminaSS, OUT);

    end

    %% create output plots

    if OUT.DATA_GUI

        startDataGUI(iSIM, SIM, OPT, BLADE, WEB, AF, Panel, LaminaSS);

    end

    

    if OUT.PLOT_F_BLD || OUT.PLOT_DISP_BLD

        plotLoadsDisp(iSIM, SIM, BLADE, AF, Coord, AppLoads, Disp, StrProps, OUT)

    end

    if OUT.PLOT_YMOD

        plotBladeYModulus(iSIM, SIM, BLADE, WEB, OUT, Panel)

    end

    if OUT.PLOT_GMOD

        plotBladeGModulus(iSIM, SIM, BLADE, WEB, OUT, Panel)

    end

    if OUT.PLOT_MASS_DEN || OUT.PLOT_PRIN_ANG || OUT.PLOT_AT_STFF || ...

       OUT.PLOT_BSTFF    || OUT.PLOT_INER     || OUT.PLOT_CENTERS

        plotStructProps(iSIM, SIM, BLADE, StrProps, OUT);

    end

    if OUT.PLOT_NORMS

        plotBladeNormStress(iSIM, SIM, BLADE, WEB, OUT, Panel, NormS)

    end

    if OUT.PLOT_SHEARS

        plotBladeShearStress(iSIM, SIM, BLADE, WEB, OUT, Panel, ShearS)

    end

    if OUT.PLOT_BCRIT

        plotBladeBuckleCrit(iSIM, SIM, BLADE, WEB, OUT, Panel, Buckle)

    end

    if OUT.PLOT_E11 || OUT.PLOT_E22 || OUT.PLOT_E12

        plotLaminaStrain(iSIM, SIM, BLADE, WEB, MATS, Panel, LaminaSS, OUT)

    end

    if OUT.PLOT_S11 || OUT.PLOT_S22 || OUT.PLOT_S12

        plotLaminaStress(iSIM, SIM, BLADE, WEB, MATS, Panel, LaminaSS, OUT)

    end

    if OUT.PLOT_S11_FC || OUT.PLOT_S22_FC || OUT.PLOT_S12_FC

        plotLaminaStressFC(iSIM, SIM, BLADE, WEB, MATS, Panel, LaminaSS, OUT)

    end

    if ( OUT.PLOT_MODE_S || OUT.PLOT_MODE_D ) && ANLS.N_MODES >= 1

        plotModes(iSIM, SIM, ANLS, Modes, OUT)

    end

    if OUT.PLOT_APPLOADS || OUT.PLOT_RESLOADS

        plotLoads(iSIM, SIM, BLADE, AppLoads, ResLoads, OUT)

    end

    if OUT.PLOT_DEFLECT

        plotDeflect(iSIM, SIM, BLADE, Disp, OUT)

    end

    

    fprintf(1, 'Co-Blade v%s terminated normally for case %s. \r\n', SIM.version, SIM.inpFile{iSIM});

    

end % for iSIM = 1:nInpFiles

文件列表(部分)

名称 大小 修改日期
Active_Input_Files.inp0.02 KB2012-09-14
Circle.prof0.61 KB2012-02-27
DU_0210.prof0.61 KB2012-02-27
DU_0230.prof0.65 KB2012-02-27
DU_0250.prof0.62 KB2012-02-27
DU_0270.prof0.66 KB2012-02-27
DU_0300.prof0.62 KB2012-02-27
DU_0330.prof0.66 KB2012-02-27
DU_0350.prof0.63 KB2012-02-27
DU_0368.prof0.66 KB2012-02-27
DU_0385.prof0.66 KB2012-02-27
DU_0395.prof0.67 KB2012-02-27
DU_0405.prof0.64 KB2012-02-27
NACA6_0180.prof0.61 KB2012-02-27
NACA6_0240.prof0.53 KB2011-10-16
NACA6_0243.prof0.57 KB2011-10-16
NACA6_0252.prof0.57 KB2011-10-16
NACA6_0266.prof0.57 KB2011-10-16
NACA6_0297.prof0.57 KB2011-10-16
NACA6_0378.prof0.58 KB2011-10-16
NACA6_0528.prof0.57 KB2011-10-16
NACA6_0751.prof0.58 KB2011-10-16
NACA6_0943.prof0.58 KB2011-10-16
NACA6_1000.prof0.48 KB2011-10-16
Transition_0183.prof0.65 KB2012-02-27
Transition_0200.prof0.64 KB2012-02-27
Transition_0418.prof0.66 KB2012-02-27
Transition_0437.prof0.66 KB2012-02-27
Transition_0472.prof0.67 KB2012-02-27
Transition_0517.prof0.67 KB2012-02-27

立即下载

相关下载

[包括不同风速曲线的风机的机械模型] 这是包括三个不同风速曲线的风力涡轮机的机械模型。 可以选择每个风速曲线并可以模拟模型。 该模型显示了WT的速度和俯仰控制的工作原理。 发电机和转换器模型由一个简单的一阶延迟来近似。 利用风廓线,。
[带有boost转换器的50w风力发电机] 在此simulink仿真中我们安装了风力发电机,直流发电机和升压转换器。风力发电机根据输入的风速给出相应的机械能。 直流发电机将其转换为直流电压。 由于速度变化会影响输出电压,因此安装了升压转换器以获得恒定电压。
[复合叶片分析和设计] 免费下载用于复合叶片分析和设计的软件的matlab代码%% clear all variables and close files/figuresclear all;close('all');fclose('all');format compact;%% set the Co-Blade versionSIM.version = '1.20.00-dcs';%% add paths to the

评论列表 共有 0 条评论

暂无评论

微信捐赠

微信扫一扫体验

立即
上传
发表
评论
返回
顶部