[General Information]
Function Name=LogNormal2D
Brief Description=Non-Linear Log Normal Functions
Function Source=fgroup.LogNormal2D
Function Type=Built-in
Function Form=Expression
Number Of Parameters=8
Number Of Independent Variables=2
Number Of Dependent Variables=1
Analytical Derivatives for User-Defined=Off


[Fitting Parameters]
Naming Method=User-Defined
Names=z0,B,C,D,E,F,G,H
Meanings=?
Initial Values=--(V)
Lower Bounds=--(X, OFF)
Upper Bounds=--(X, OFF)
Number Of Significant Digits=


[Formula]
z = z0 + B*exp(-0.5*pow((log(x/C)/D),2)) + E*exp(-0.5*pow((log(y/F)/G),2)) + 
     H*exp(-0.5*(pow((log(x/C)/D),2) + pow((log(y/F)/G),2)));


[Constraints]



[Constants]


[Parameters Initialization]
Curve x_curve, y_curve;
bool bRes = get_interpolated_xz_yz_curves_from_3D_data(x_curve, y_curve, x_data, y_data, z_data);
if(!bRes) return;
double dZmin, dZmax;
x_z_curve.GetMinMax(dZmin,dZmax);
z0 = dZmin;
C = xatymax(x_curve);
F = xatymax(y_curve);
D = abs(xatymax(x_curve)-xatymin(x_curve));   
G = abs(xatymax(y_curve)-xatymin(y_curve));
B = max(x_curve)/2;
E = max(x_curve)/2;
H = max(x_curve)/2;


[Initializations]



[After Fitting]



[On Param Change]



[Independent Variables]
x=
y=


[Dependent Variables]
z=


[Controls]
General Linear Constraints=Off
Initialization Scripts=Off
Scripts After Fitting=Off
Number Of Duplicates=N/A
Duplicate Offset=N/A
Duplicate Unit=N/A
Generate Curves After Fitting=Yes
Curve Point Spacing=Uniform on X-Axis Scale
Generate Peaks After Fitting=Yes
Generate Peaks During Fitting=Yes
Generate Peaks with Baseline=Yes
Paste Parameters to Plot After Fitting=Yes
Paste Parameters to Notes Window After Fitting=Yes
Generate Residuals After Fitting=No
Keep Parameters=No
Enable Parameters Initialization=0
Compile On Param Change Script=1


[Compile Function]
Compile=0
Compile Parameters Initialization=1
On Param Change Scripts Enabled=N/A


[Origin C Function Header]



[Origin C Parameter Initialization Header]
#include <origin.h>
#include <Nag_utils.h>


