| 
        
          | 
              
                | T O P I C    R E V I E W |  
                | skaniceuy | Posted - 04/20/2016 : 10:08:18 AM Hi, everyone,
 I tried to fit my data with user-defined non-linear function (I created via Fitting Function Organizer, I use OriginPro 2015, (32-bit) b9.2.214)
 My function is y = (1/((A0*exp(-(x-A1)/A2) +1))) + A3;
 
 Function Form: Origin C
 Treat All numbers as double: checked
 Parameter settings:
 InitialValues = --(V)
 Meanings = height,center,FWHM,offset
 LowerBounds = 0.0(X, ON),0.0(X, ON),0.0(X, ON),0.0(X, ON)
 UpperBounds = --(X, OFF),--(X, OFF),--(X, OFF),--(X, OFF)
 NamingMethod = User-Defined
 NumberOfSignificantDigits =
 Unit =
 
 Enable Auto Initialization: checked with Use Origin C
 
 Parameter Initialization: A1 = peak_pos(x_y_curve, &A2, &A0, &A3);
 
 When I use this function to fit my data, it does not do a good job, please see the snapshot below.
  
 Please let me know if there is any way to improve this fitting,
 
 Thank you very much.
 
 Gian.
 |  
                | 3   L A T E S T    R E P L I E S    (Newest First) |  
                | Hideo Fujii | Posted - 04/21/2016 : 10:26:41 AM Hi Gian,
 
 No problem.
 By the way, your function is around the same to Origin's built-in Boltzmann function, and you should be able
 to get your own parameters by defining the derived parameters.
 http://www.originlab.com/doc/Origin-Help/Define-DerivPara
 
 The advantage is not only doing the work easier, but also you can take advantage of the built-in function's
 parameter initialization routine and others.
 
 Good luck.
 
 --Hideo Fujii
 OriginLab
 |  
                | skaniceuy | Posted - 04/20/2016 : 4:14:01 PM 
 quote:Originally posted by Hideo Fujii
 
 Hi skaniceuy,
 
 Since your function is sigmoidal, I suppose your original data is the scatter plot in the upper panel.
 Then, though I couldn't read out the Y scale of the upper plot, your function's asymptote goes from
 A3 at bottom to A3+1 at ceiling - no way to control the amplitude. Maybe you can consider to change
 the parameter A0 to make it control it such as?:
 y = A0*(1/((exp(-(x-A1)/A2) +1))) + A3;In my experiment, it converged okay. 
 Hope this helps.
 
 --Hideo Fujii
 OriginLab
 
 
 
 
 Hi, Hideo
 
 Thank you very much for your help!!!!
 It works ok with the revised equation you suggested!!!
 
 I really appreciate your help!!!
 
 Thanks
 
 Gian.
 |  
                | Hideo Fujii | Posted - 04/20/2016 : 12:00:29 PM Hi skaniceuy,
 
 Since your function is sigmoidal, I suppose your original data is the scatter plot in the upper panel.
 Then, though I couldn't read out the Y scale of the upper plot, your function's asymptote goes from
 A3 at bottom to A3+1 at ceiling - no way to control the amplitude. Maybe you can consider to change
 the parameter A0 to make it control it such as?:
 y = A0*(1/((exp(-(x-A1)/A2) +1))) + A3;In my experiment, it converged okay. 
 Hope this helps.
 
 --Hideo Fujii
 OriginLab
 
 |  |  
 |