📄 asufit.c
字号:
static double __Array311_r[3] = { 0.0, 1.0, 0.0 };
static double __Array312_r[3] = { .5, .5, .5 };
static double __Array313_r[3] = { 1.0, 0.0, 0.0 };
static double __Array314_r[3] = { 1.0, 0.0, 0.0 };
static double __Array315_r[3] = { 1.0, 0.0, 0.0 };
static double __Array316_r[3] = { 0.0, 1.0, 0.0 };
static double __Array317_r[3] = { .5, .5, .5 };
static double __Array318_r[3] = { 1.0, 0.0, 0.0 };
static double __Array319_r[3] = { 1.0, 0.0, 0.0 };
static double __Array320_r[3] = { 1.0, 0.0, 0.0 };
static double __Array321_r[3] = { 0.0, 1.0, 0.0 };
static double __Array322_r[3] = { 0.0, 1.0, 0.0 };
static double __Array323_r[3] = { 1.0, 0.0, 0.0 };
static double __Array324_r[3] = { 1.0, 0.0, 0.0 };
static double __Array325_r[3] = { 0.0, 1.0, 0.0 };
static double __Array326_r[3] = { .5, .5, .5 };
static double __Array327_r[3] = { 1.0, 0.0, 0.0 };
static double __Array328_r[3] = { 1.0, 0.0, 0.0 };
static double __Array329_r[3] = { 1.0, 0.0, 0.0 };
static double __Array330_r[3] = { 0.0, 1.0, 0.0 };
static double __Array331_r[3] = { .5, .5, .5 };
static double __Array332_r[3] = { 1.0, 0.0, 0.0 };
static double __Array333_r[3] = { 1.0, 0.0, 0.0 };
static double __Array334_r[3] = { 1.0, 0.0, 0.0 };
static double __Array335_r[3] = { 0.0, 1.0, 0.0 };
static double __Array336_r[3] = { .5, .5, .5 };
static double __Array337_r[3] = { 1.0, 0.0, 0.0 };
static double __Array338_r[3] = { 1.0, 0.0, 0.0 };
static double __Array339_r[3] = { 1.0, 0.0, 0.0 };
static double __Array340_r[3] = { 0.0, 1.0, 0.0 };
static double __Array341_r[3] = { .5, .5, .5 };
static double __Array342_r[3] = { 1.0, 0.0, 0.0 };
static double __Array343_r[3] = { 1.0, 0.0, 0.0 };
static double __Array344_r[3] = { 1.0, 0.0, 0.0 };
static double __Array345_r[3] = { 0.0, 1.0, 0.0 };
static double __Array346_r[3] = { 1.0, 0.0, 0.0 };
static double __Array347_r[4] = { 0.1, 0.1, 0.8, 0.8 };
static double __Array348_r[3] = { 1.0, 1.0, 1.0 };
static double __Array349_r[4] = { 0.1, .3, 0.76, 0.48 };
static double __Array350_r[4] = { .9, .71, .08, .05 };
static double __Array351_r[3] = { 0.8, 0.8, 0.8 };
static double __Array352_r[3] = { 1.0, 0.0, 0.0 };
static double __Array353_r[4] = { .9, .64, .08, .05 };
static double __Array354_r[3] = { 0.8, 0.8, 0.8 };
static double __Array355_r[3] = { 1.0, 0.0, 0.0 };
static double __Array356_r[4] = { .9, .56, 0.08, .05 };
static double __Array357_r[3] = { 0.8, 0.8, 0.8 };
static double __Array358_r[3] = { 1.0, 0.0, 0.0 };
static double __Array359_r[3] = { 1.0, 1.0, 1.0 };
static double __Array360_r[3] = { 0.0, 0.0, 0.0 };
static double __Array361_r[4] = { 0.0, .9, 1.0, .05 };
static double __Array362_r[4] = { .9, .44, .08, .05 };
static double __Array363_r[3] = { 0.8, 0.8, 0.8 };
static double __Array364_r[3] = { 1.0, 0.0, 0.0 };
static double __Array365_r[4] = { .9, .34, .08, .05 };
static double __Array366_r[3] = { 0.8, 0.8, 0.8 };
static double __Array367_r[3] = { 1.0, 0.0, 0.0 };
static double __Array368_r[3] = { 1.0, 1.0, 1.0 };
static double __Array369_r[3] = { 0.0, 0.0, 0.0 };
static double __Array370_r[4] = { 0.1, .05, .1, .05 };
static double __Array371_r[3] = { 1.0, 1.0, 1.0 };
static double __Array372_r[4] = { 0.15, .15, .7, .7 };
static double __Array373_r[4] = { 0.1, .1, 0.75, 0.75 };
/*
* The function "MAsufit" is the implementation version of the "Asufit"
* M-function from file "C:\MATLABR11\asufit24\Asufit.m" (lines 1-4358). It
* contains the actual compiled code for that M-function. It is a static
* function and must only be called from one of the interface functions,
* appearing below.
*/
/*
* function Asufit(action)
*/
static void MAsufit(mxArray * action) {
mxArray * actionsText = mclGetUninitializedArray();
mxArray * ampPrintbutton = mclGetUninitializedArray();
mxArray * ans = mclInitializeAns();
mxArray * bottom = mclGetUninitializedArray();
mxArray * button = mclGetUninitializedArray();
mxArray * colorTemp = mclGetUninitializedArray();
mxArray * count1 = mclGetUninitializedArray();
mxArray * count2 = mclGetUninitializedArray();
mxArray * data2 = mclGetUninitializedArray();
mxArray * dataAv = mclGetUninitializedArray();
mxArray * dataFile = mclGetUninitializedArray();
mxArray * dataT1 = mclGetUninitializedArray();
mxArray * dataT2 = mclGetUninitializedArray();
mxArray * dataTemp = mclGetUninitializedArray();
mxArray * databack = mclGetUninitializedArray();
mxArray * dispInd1 = mclGetUninitializedArray();
mxArray * entryPath = mclGetUninitializedArray();
mxArray * fcount = mclGetUninitializedArray();
mxArray * fid = mclGetUninitializedArray();
mxArray * filename = mclGetUninitializedArray();
mxArray * firstT = mclGetUninitializedArray();
mxArray * firstWl = mclGetUninitializedArray();
mxArray * format = mclGetUninitializedArray();
mxArray * frmBorder = mclGetUninitializedArray();
mxArray * frmPos = mclGetUninitializedArray();
mxArray * i = mclGetUninitializedArray();
mxArray * irfback = mclGetUninitializedArray();
mclForLoopIterator iterator_0;
mxArray * k = mclGetUninitializedArray();
mxArray * labelHt = mclGetUninitializedArray();
mxArray * leftSide = mclGetUninitializedArray();
mxArray * lengthEmit = mclGetUninitializedArray();
mxArray * locationsText = mclGetUninitializedArray();
mxArray * lowerLimit = mclGetUninitializedArray();
mxArray * nargin_ = mclGetUninitializedArray();
mxArray * newT = mclGetUninitializedArray();
mxArray * newWl = mclGetUninitializedArray();
mxArray * numCurves = mclGetUninitializedArray();
mxArray * numTimes = mclGetUninitializedArray();
mxArray * numWl = mclGetUninitializedArray();
mxArray * ok = mclGetUninitializedArray();
mxArray * open = mclGetUninitializedArray();
mxArray * outFile = mclGetUninitializedArray();
mxArray * params = mclGetUninitializedArray();
mxArray * promptStr = mclGetUninitializedArray();
mxArray * pt = mclGetUninitializedArray();
mxArray * rightSide = mclGetUninitializedArray();
mxArray * saveInd = mclGetUninitializedArray();
mxArray * saveTemp = mclGetUninitializedArray();
mxArray * saveas = mclGetUninitializedArray();
mxArray * secondT = mclGetUninitializedArray();
mxArray * spacing = mclGetUninitializedArray();
mxArray * str = mclGetUninitializedArray();
mxArray * str2 = mclGetUninitializedArray();
mxArray * taoChanged = mclGetUninitializedArray();
mxArray * temp = mclGetUninitializedArray();
mxArray * tempT = mclGetUninitializedArray();
mxArray * tempWl = mclGetUninitializedArray();
mxArray * tempind = mclGetUninitializedArray();
mxArray * tempt = mclGetUninitializedArray();
mxArray * tempticks = mclGetUninitializedArray();
mxArray * thisSpectrum = mclGetUninitializedArray();
mxArray * timeStep = mclGetUninitializedArray();
mxArray * timeStep1 = mclGetUninitializedArray();
mxArray * timeStep2 = mclGetUninitializedArray();
mxArray * timestep2 = mclGetUninitializedArray();
mxArray * top = mclGetUninitializedArray();
mxArray * top1 = mclGetUninitializedArray();
mxArray * top2 = mclGetUninitializedArray();
mxArray * ttemp = mclGetUninitializedArray();
mxArray * txtPos = mclGetUninitializedArray();
mxArray * upperLimit = mclGetUninitializedArray();
mxArray * w = mclGetUninitializedArray();
mxArray * wavelengthStep = mclGetUninitializedArray();
mxArray * z = mclGetUninitializedArray();
mlfAssign(&nargin_, mlfNargin(0, action, NULL));
mclValidateInputs("Asufit", 1, &action);
mclCopyArray(&action);
/*
*
* %------------------------------------------------------------------------------
* % FILENAME: ASUFIT.M
* %
* % This is ASUFIT, a general fitting routine written under MATLAB for fitting
* % transient emission and absorbance change data. Any nonprofit organization
* % is welcome to use this without charge, but we ask that the program authors
* % be acknowleged. Program authors are:
* %
* % Evaldas Katilius
* % Joel Hindorff
* % Neal Woodbury
* %
* % This file creates the main figure window that is the ASUFIT graphical user
* % interface. The commands in this file set up the uicontrols and prepare
* % the MATLAB workspace.
* %
* % Possible actions of this function are:
* % 'initialize'
* % 'spc'
* % 'abs'
* % 'svd'
* % 'off'
* %------------------------------------------------------------------------------
*
* % Figure and axes handles
* global mainWindow
* global spcDataGrid
* global spcResidGrid
* global absDataGrid1
* global absDataGrid2
* global absResidGrid1
* global absResidGrid2
* global svdGrid1
* global svdGrid2
* global svdGrid3
* global absIntSetAxes1
* global absIntSetAxes2
* global spcIntSetAxes
*
* % Menu handles
* global expFile
* global kineticsFile
* global spectrumFile
* global ampSpecFile
* global spcFitSave
* global plot3D
* global ampSpecPlot
* global subtract
* global revert
* global spcGlobal
* global perform
* global components
* global glob
* global spec
* global absDispersion
* global restore
* global average
* global optionsMenu
* global plotMenu
*
* % Common uicontrol handles
* global textBox
* global optionsbutton
* global plotbutton
* global svdbutton
* global action1button
* global action2button
* global action3button
*
* % SPC uicontrol handles
* global spcSpectrumText
* global spcPromptText
* global spcDateText
* global spcSpectrumBox
* global spcPromptBox
* global spcDateBox
* global spcExciteText
* global spcEmitText
* global spctpchText
* global spcExciteBox
* global spcEmitBox
* global spctpchBox
* global spcShiftNumText
* global spcErrorText
* global spcGlobalErrorText
* global spcShiftNumBox
* global spcErrorBox
* global spcGlobalErrorBox
* global spcTaoAnsText
* global spcTaoAnsBox
* global spcAmpAnsText
* global spcAmpAnsBox
* global spcIntPlot
* global spcLeftEnd
* global spcRightEnd
* global spcTog
* global spcPlot
* global spcInd
* global spcPlotMode
* global spcResidPlot
*
* % Absorbance uicontrol handles
*
* global absCurrentWlText
* global absCurrentWlBox
* global absCurrentTimeText
* global absCurrentTimeBox
* global absAbsorbText
* global absAbsorbBox
* global absTaoAnsText
* global absTaoAnsBox
* global absErrorText
* global absErrorBox
*
* % Options screen handles
* global spcNumTaoText
* global spcNumTaoBox
* global spcTaoText
* global spcTaoBox
* global spcNumTaoFixedText
* global spcNumTaoFixedBox
* global spcTaoFixedText
* global spcTaoFixedBox
* global spcNumAllTaoText
* global spcNumAllTaoBox
* global spcAllTaoText
* global spcAllTaoBox
* global spcshifttext
* global spcshift
* %global spcFTolText
* %global spcFTolBox
* global spcMaxItText
* global spcMaxItBox
*
* global absNumTaoText
* global absNumTaoBox
* global absTaoText
* global absTaoBox
* global absNumTaoFixedText
* global absNumTaoFixedBox
* global absTaoFixedText
* global absTaoFixedBox
* global absNumAllTaoText
* global absNumAllTaoBox
* global absAllTaoText
* global absAllTaoBox
* global absPulseWidthText
* global absPulseWidthBox
* global absShiftGuessText
* global absShiftGuessBox
* global abscheckboxtext
* global abscheckbox1
* global abscheckbox2
* global abscheckbox3
* global absMaxItText
* global absMaxItBox
* global absDisperCoeffsText
* global absDisperCoeffsBox
* global absDisperText
* global absDisper1Hypertext
* global absDisper2Hypertext
* global absDisper3Hypertext
* global absIntPlot1
* global absIntPlot2
* global absLeftEnd1
* global absRightEnd1
* global absLeftEnd2
* global absRightEnd2
* global absTog1
* global absTog2
* global absPlotKinSpec
* global absInd1
* global absInd2
* global absPlot1
* global absPlot2
* global absResidPlot1
* global absResidPlot2
* global abstimeaxis
*
* %SVD
* global svdNumVecsText
* global svdNumVecsBox
* global svdTimeText
* global svdTimeBox
* global svdWavelengthText
* global svdWavelengthBox
* global svdErrorText
* global svdErrorBox
* global svdWeightText
* global svdWeightBox
* global svdSurfOld
* global svdSurfNew
* global svdGlobalTogHypertext
* global svdGlobalToggle
*
* %Amps spec
* global ampPlotAll
* global ampInd
* global ampSpecWindow
* global ampGrid
* global ampUpbutton
* global ampDownbutton
* global ampClosebutton
* global ampTextBox
* global ampSwitchbutton
*
* % Absorbance 3D plot variables
* global abs3dFig
* global abs3dAxes
* global abs3dView
* global horizRotBox
* global vertRotBox
*
* % Book keeping variables
*
* global analysisType % == 1 -> SPC/IRF
* % == 2 -> Absorbance
* % == 3 -> SVD of Absorbance
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -