T O P I C R E V I E W |
millot.marius |
Posted - 10/25/2011 : 7:48:52 PM I just upgraded to 8.5.1 from 8.5. i cannot use an after fitting code that works under 8.1 to extract fit results data in a worksheet see code below
it looks like no new wks is created ...
any thought ?
Many thanks
if(exist(Rubyfit)!=2) {newbook name:=Rubyfit sheet:=1 option:=1 chkname:=1;
Rubyfit!wks.col1.name$= Dataset;
Rubyfit!wks.col2.name$= Peak1t;
wks.addcol(); Rubyfit!wks.col3.name$= width 1;
wks.addcol(); Rubyfit!wks.col4.name$= Peak 2;
wks.addcol(); Rubyfit!wks.col5.name$= width 2;
wks.addcol(); Rubyfit!wks.col6.name$= P;
wks.addcol(); Rubyfit!wks.col7.name$= Pressure; }
// Get the tree from the last Report Sheet (this fit) getresults iw:=__REPORT$;
// Assign ranges to the two columns in 'Rubyfit' range ra1 = [Rubyfit]1!1; range ra2 = [Rubyfit]1!2; range ra3 = [Rubyfit]1!3; range ra4 = [Rubyfit]1!4; range ra5 = [Rubyfit]1!5; range ra6 = [Rubyfit]1!6; range ra7 = [Rubyfit]1!7;
// Get the current row size and increment by 1 size = ra1.GetSize(); size++;
// Write the Input data range in first column
ra1[size]$ = ResultsTree.Input.R2.C2$;
// and the Peak Center value in the second
ra2[size] = ResultsTree.Parameters.xc.Value; ra3[size] = ResultsTree.Parameters.w.Value; ra4[size] = ResultsTree.Parameters.xc__2.Value; ra5[size] = ResultsTree.Parameters.w__2.Value; ra6[size] = (ra4[size]-694.28)/0.365; ra7[size] =int(ra6[size]*10)/10;
col(6)[U]$ = GPa;
col(7)[U]$ = GPa; col(2)[U]$ = nm; col(3)[U]$ = nm;
Origin Ver. and Service Release (Select Help-->About Origin): 8.5.1 Operating System:xp |
5 L A T E S T R E P L I E S (Newest First) |
millot.marius |
Posted - 10/26/2011 : 11:40:25 PM You guys are amazing ! Many thanks Marius |
Sam Fang |
Posted - 10/26/2011 : 11:16:31 PM I can reproduce your problem in Origin8.5.1SR0. It’s a bug of Script After Fitting in 8.5.1SR0. It has been fixed in 8.5.1SR1.
You can update your 8.5.1SR0 to 8.5.1SR2. To update, select Help: Check for Updates from Origin menu. You can also download the patch in the page. http://www.originlab.com/index.aspx?go=SUPPORT/ServiceReleases
Sam OriginLab Technical Services |
millot.marius |
Posted - 10/26/2011 : 2:40:35 PM I tried to use the script in 8.5.1 in the after fitting procedure . I used a theme created under 8.1. It performs the fit but does not create a rubyfit window to put the results in
Here is the complete .oif theme
<?xml version="1.0"?> <Settings NodeID="0" Comment="">Settings<node15 Label="Recalculate">2</node15><node1670 Label="Number of Replicas">1.</node1670><node2097221 Label="Peak Finding Settings">-1</node2097221><node4012 Label="Peak Finding Method">0</node4012><node4013 Label="Local Points">5.</node4013><node4015 Label="Window Height(%)">20.</node4015><node4016 Label="Window Width(%)">50.</node4016><node4018 Label="Minimum Points">8.</node4018><node4019 Label="Maximum Area">0.20000000000000001</node4019><node4020 Label="Number of Z Levels">80.</node4020><node4021 Label="Minimum Roundness([0, 1])">0.5</node4021><node4011 Label="Peak Direction">2.</node4011><node4017 Label="Peak Min Height(%Y scale)">3.</node4017><node1676 Label="Plot Individual Peak Curve">0</node1676><node1678 Label="Plot Cumulative Fitted Curve">1</node1678><node2097232 Label="Function Selection">-1</node2097232><node246 Label="Category">Origin Basic Functions</node246><node248 Label="Function">Lorentz</node248><node2097233 Label="Fitted Curves">-1</node2097233><node277 Label="Show Preview on Source Graph">1.</node277><node1520 Label="Fitted Curves Plot">1</node1520><node65792 Label="Plot in Report Table">1.</node65792><node65803 Label="Plot Type">0.</node65803><node65804 Label="Plot on Source Graph">1</node65804><node65805 Label="Update Legend on Source Graph">0</node65805><node65812 Label="Multiple Plots Use Source Graph Color">0</node65812><node65836 Label="X Data Type">0</node65836><node65794 Label="Points">100.</node65794><node65841 Label="Range">0.</node65841><node65816 Label="Min">::{Auto=1}689.93200000000002</node65816><node65818 Label="Max">::{Auto=1}709.77200000000005</node65818><node65801 Label="Range Margin (%)">0.</node65801><node65807 Label="Confidence Bands">0.</node65807><node65808 Label="Prediction Bands">0.</node65808><node65811 Label="Confidence Level for Curves(%)">95.</node65811><node1320 Label="Residual Plots">-1</node1320><node3950 Label="Residual Type">0</node3950><node1521 Label="Residual vs. Independent Plot">1</node1521><node1522 Label="Histogram of the Residual Plot">0</node1522><node1523 Label="Residual vs. Predicted Values Plot">0</node1523><node1524 Label="Residual vs. the Order of the Data Plot">0</node1524><node1525 Label="Residual Lag Plot">0</node1525><node2097162 Label="Data Selection">-1</node2097162><node2097163 Label="Input Data">0</node2097163><node2097236 Label="Fit Control">-1</node2097236><node237 Label="Max. Number of Iterations">400.</node237><node235 Label="Tolerance">1.0000000000000001e-009</node235><node2097240 Label="Derivative Delta">-1</node2097240><node240 Label="Delta">5.0000000000000001e-003</node240><node241 Label="Minimum">4.9999999999999997e-030</node241><node242 Label="Maximum">4.9999999999999998e+030</node242><node244 Label="Fixed">0.</node244><node250 Label="Parameters' CI Computation Method">0.</node250><node3910 Label="Use Reduced Chi-Sqr">1</node3910><node2097238 Label="Fitting Codes">-1</node2097238><node430 Label="Function">y = y0 + (2*A/PI)*(w/(4*(x-xc)^2 + w^2))</node430><node432 Label="Parameter Init"><![CDATA[ xc = peak_pos(x_y_curve, &w, &y0, NULL, &A); A *= 1.57*w;]]></node432><node438 Label="Constraints"></node438><node435 Label="Script Before Fitting"></node435><node437 Label="Script After Fitting"><![CDATA[ if(exist(Rubyfit)!=2) { newbook name:=Rubyfit sheet:=1 option:=1 chkname:=1; Rubyfit!wks.col1.name$= Dataset; Rubyfit!wks.col2.name$= Peak1t;
wks.addcol(); Rubyfit!wks.col3.name$= width 1;
wks.addcol(); Rubyfit!wks.col4.name$= Peak 2;
wks.addcol(); Rubyfit!wks.col5.name$= width 2;
wks.addcol(); Rubyfit!wks.col6.name$= P;
wks.addcol(); Rubyfit!wks.col7.name$= Pressure;
} // Get the tree from the last Report Sheet (this fit) getresults iw:=__REPORT$; // Assign ranges to the two columns in 'Rubyfit' range ra1 = [Rubyfit]1!1; range ra2 = [Rubyfit]1!2; range ra3 = [Rubyfit]1!3; range ra4 = [Rubyfit]1!4; range ra5 = [Rubyfit]1!5; range ra6 = [Rubyfit]1!6; range ra7 = [Rubyfit]1!7;
// Get the current row size and increment by 1 size = ra1.GetSize(); size++; // Write the Input data range in first column
ra1[size]$ = ResultsTree.Input.R2.C2$;
// and the Peak Center value in the second
ra2[size] = ResultsTree.Parameters.xc.Value; ra3[size] = ResultsTree.Parameters.w.Value; ra4[size] = ResultsTree.Parameters.xc__2.Value; ra5[size] = ResultsTree.Parameters.w__2.Value; ra6[size] = (ra4[size]-694.28)/0.365; ra7[size] =round(ra6[size],2);
col(6)[U]$ = GPa;
col(7)[U]$ = GPa; col(2)[U]$ = nm; col(3)[U]$ = nm;
]]></node437><node439 Label="Derived Parameters"><![CDATA[H=2*A/(PI*w) ]]></node439><node13 Label="">-1</node13><node17000 Label="Function Selection">1</node17000><node17010 Label="Parameter Initialization code">1</node17010><node17007 Label="Auto Parameter Initialization Status">1</node17007><node17001 Label="Parameter Values">0.</node17001><node17011 Label="Fixed Status Only">0</node17011><node17002 Label="Fixed Status and Fixed Value">0</node17002><node17003 Label="Share Status">1.</node17003><node17004 Label="Upper and Lower Bounds">1</node17004><node17008 Label="Enable Linear Constraints Status">1</node17008><node17005 Label="Constraints">1</node17005><node17006 Label="Script after Fitting">1</node17006><node17009 Label="Other Settings">1.</node17009><node2097170 Label="Quantities to Compute">-1</node2097170><node2097169 Label="Fit Parameters">-1</node2097169><node332 Label="Unit">0</node332><node320 Label="Value">1.</node320><node323 Label="Shared">0.</node323><node322 Label="Fixed">0.</node322><node321 Label="Standard Error">1.</node321><node330 Label="LCL">0.</node330><node331 Label="UCL">0.</node331><node215 Label="Confidence Level for Parameters(%)">95.</node215><node325 Label="t-Value">0.</node325><node334 Label="Prob>|t|">0.</node334><node337 Label="Dependency">0.</node337><node338 Label="CI Half-Width">0.</node338><node339 Label="Lower Bound">0.</node339><node340 Label="Upper Bound">0.</node340><node2097168 Label="Fit Statistics">-1</node2097168><node350 Label="Number of Points">1.</node350><node351 Label="Degrees of Freedom">1.</node351><node366 Label="Reduced Chi-Sqr">1.</node366><node352 Label="R Value">0.</node352><node367 Label="Residual Sum of Squares">1.</node367><node370 Label="Pearson's r">1.</node370><node355 Label="R-Square(COD)">0.</node355><node356 Label="Adj. R-Square">1.</node356><node360 Label="Root-MSE (SD)">0.</node360><node380 Label="Norm of Residuals">0.</node380><node382 Label="Number of Iterations">0.</node382><node384 Label="Fit Status">1.</node384><node385 Label="Number of Replicas">0.</node385><node386 Label="Replicate From nth Parameter">0.</node386><node387 Label="Number of Parameters Used in Replicas">0.</node387><node342 Label="Fit Summary">1</node342><node343 Label="Value">1.</node343><node344 Label="Standard Error">1.</node344><node345 Label="LCL">0.</node345><node346 Label="UCL">0.</node346><node347 Label="Adj. R-Square">1.</node347><node348 Label="R-Square(COD)">0.</node348><node349 Label="Reduced Chi-Sqr">1.</node349><node475 Label="ANOVA">1.</node475><node170 Label="Covariance matrix">0.</node170><node171 Label="Correlation matrix">0.</node171><node2097217 Label="Residual Analysis">-1</node2097217><node3951 Label="Regular">1.</node3951><node3952 Label="Standardized">0</node3952><node3953 Label="Studentized">0</node3953><node3954 Label="Studentized Deleted">0</node3954><node2103296 Label="Find Specific X/Y">-1</node2103296><node2103312 Label="Find X from Y">0</node2103312><node132627 Label="Number of X Columns">1.</node132627><node2103376 Label="Find Y from X">0</node2103376><node198163 Label="Number of Y Columns">1.</node198163><node2900 Label="Parameters">-1</node2900><node2906 Label="AutoParamsInit">1</node2906><node2907 Label="LinearConstraints">0</node2907><node5000 Label="Share">-1</node5000><node5001 Label="Value1">0</node5001><node5002 Label="Value2">0</node5002><node5003 Label="Value3">0</node5003><node5004 Label="Value4">0</node5004><node5005 Label="Value5">0</node5005><node5006 Label="Value6">0</node5006><node5007 Label="Value7">0</node5007><node6000 Label="Fixed">-1</node6000><node6001 Label="Value1">0</node6001><node6002 Label="Value2">0</node6002><node6003 Label="Value3">0</node6003><node6004 Label="Value4">0</node6004><node6005 Label="Value5">0</node6005><node6006 Label="Value6">0</node6006><node6007 Label="Value7">0</node6007><node15000 Label="FixedValues">-1</node15000><node15001 Label="Value1">1167.5</node15001><node15002 Label="Value2">696.64200000000005</node15002><node15003 Label="Value3">9.4058890327210404e-002</node15003><node15004 Label="Value4">1147.1044751071465</node15004><node15005 Label="Value5">698.04600000000005</node15005><node15006 Label="Value6">0.13754529659087264</node15006><node15007 Label="Value7">2547.137077744645</node15007><node7000 Label="LowerBounds">-1</node7000><node7001 Label="Value1">-1.23456789e-300</node7001><node7002 Label="Value2">-1.23456789e-300</node7002><node7003 Label="Value3">0.</node7003><node7004 Label="Value4">-1.23456789e-300</node7004><node7005 Label="Value5">-1.23456789e-300</node7005><node7006 Label="Value6">0.</node7006><node7007 Label="Value7">-1.23456789e-300</node7007><node8000 Label="LowerBoundsExclusive">-1</node8000><node8001 Label="Value1">0</node8001><node8002 Label="Value2">0</node8002><node8003 Label="Value3">1</node8003><node8004 Label="Value4">0</node8004><node8005 Label="Value5">0</node8005><node8006 Label="Value6">1</node8006><node8007 Label="Value7">0</node8007><node9000 Label="LowerBoundsEnable">-1</node9000><node9001 Label="Value1">0</node9001><node9002 Label="Value2">0</node9002><node9003 Label="Value3">1</node9003><node9004 Label="Value4">0</node9004><node9005 Label="Value5">0</node9005><node9006 Label="Value6">1</node9006><node9007 Label="Value7">0</node9007><node10000 Label="UpperBounds">-1</node10000><node10001 Label="Value1">-1.23456789e-300</node10001><node10002 Label="Value2">-1.23456789e-300</node10002><node10003 Label="Value3">-1.23456789e-300</node10003><node10004 Label="Value4">-1.23456789e-300</node10004><node10005 Label="Value5">-1.23456789e-300</node10005><node10006 Label="Value6">-1.23456789e-300</node10006><node10007 Label="Value7">-1.23456789e-300</node10007><node11000 Label="UpperBoundsExclusive">-1</node11000><node11001 Label="Value1">0</node11001><node11002 Label="Value2">0</node11002><node11003 Label="Value3">0</node11003><node11004 Label="Value4">0</node11004><node11005 Label="Value5">0</node11005><node11006 Label="Value6">0</node11006><node11007 Label="Value7">0</node11007><node12000 Label="UpperBoundsEnable">-1</node12000><node12001 Label="Value1">0</node12001><node12002 Label="Value2">0</node12002><node12003 Label="Value3">0</node12003><node12004 Label="Value4">0</node12004><node12005 Label="Value5">0</node12005><node12006 Label="Value6">0</node12006><node12007 Label="Value7">0</node12007><node13000 Label="Values">-1</node13000><node13001 Label="Value1">1167.5</node13001><node13002 Label="Value2">696.64200000000005</node13002><node13003 Label="Value3">9.4058890327210404e-002</node13003><node13004 Label="Value4">1147.1044751071465</node13004><node13005 Label="Value5">698.04600000000005</node13005><node13006 Label="Value6">0.13754529659087264</node13006><node13007 Label="Value7">2547.137077744645</node13007><node14000 Label="SignificantDigit">-1</node14000><node14001 Label="Value1">0</node14001><node14002 Label="Value2">0</node14002><node14003 Label="Value3">0</node14003><node14004 Label="Value4">0</node14004><node14005 Label="Value5">0</node14005><node14006 Label="Value6">0</node14006><node14007 Label="Value7">0</node14007><node2097488 Label="Output Settings">-1</node2097488><node940 Label="Paste Result Tables to Source Graph">0</node940><node1549 Label="Template to Create Table"></node1549><node1558 Label="Graph Table Theme"></node1558><node4000 Label="Arrange Graphs into Columns">::{Auto=1||1}1</node4000><node4005 Label="Arrange Plots of Same Type in One Graph">0.</node4005><node1559 Label="Fitted Results Sheet Arrangement">0.</node1559><node2097166 Label="Report Tables">-1</node2097166><node907 Label="Book"><auto></node907><node20000 Label="BookName">A660c12r1p41</node20000><node20001 Label=""></node20001><node908 Label="Sheet"><new></node908><node20005 Label="SheetName">FitNL1</node20005><node20006 Label="">FitNL1</node20006><node928 Label="Results Log">0.</node928><node935 Label="Script Window">0.</node935><node936 Label="Notes Window"><none></node936><node2097164 Label="Fitted Curves">-1</node2097164><node903 Label="Book"><auto></node903><node20010 Label="BookName">A660c12r1p41</node20010><node20011 Label=""></node20011><node904 Label="Sheet"><new></node904><node20015 Label="SheetName">FitNLCurve1</node20015><node20016 Label="">FitNLCurve1</node20016><node2097165 Label="Fit Residuals">-1</node2097165><node901 Label="Book"><fittedvalue></node901><node20020 Label="BookName">A660c12r1p41</node20020><node20021 Label=""></node20021><node902 Label="Sheet"><fittedvalue></node902><node20025 Label="SheetName">FitNLCurve1</node20025><node20026 Label=""></node20026><node2097167 Label="Find Specific X/Y Tables">-1</node2097167><node926 Label="Book"><fittedvalue></node926><node20030 Label="BookName">A660c12r1p41</node20030><node20031 Label=""></node20031><node927 Label="Sheet"><new></node927><node20035 Label="FindX SheetName">FitNLFindXfromY1</node20035><node20036 Label="">FitNLFindXfromY1</node20036><node20034 Label="FindY SheetName">FitNLFindYfromX1</node20034><node20037 Label=""></node20037><node937 Label="Optional Report Tables">-1</node937><node1500 Label="Notes">1.</node1500><node1505 Label="Input Data">1.</node1505><node1510 Label="Masked Data">0</node1510><node1515 Label="Missing Data">0</node1515><node20150 Label="OutManagerPointer">455397384</node20150><node20155 Label="OperationPointer">452692576</node20155></Settings>
|
greg |
Posted - 10/26/2011 : 2:36:03 PM I tried your script in each release of 8.5.1 (SR0, SR1 and SR2) and they all worked. As written, the script must be run immediately after running a two peak fit. |
Sam Fang |
Posted - 10/26/2011 : 06:34:58 AM What's your Origin8.5.1's build number?
And can you send us the report sheet? Then we may reproduce your problem.
To upload a file, click Send File to Tech support button on the top right of the forum.
Thanks.
Sam OriginLab Technical Services |