Added Bessel functions.

This commit is contained in:
2018-02-16 08:52:14 +01:00
parent 9eb908c795
commit beab905ecd

View File

@ -89,9 +89,9 @@ sub CreateMSRUni {
# loop over fitTypes # loop over fitTypes
if (!defined($All{"numComps"})) {$All{"numComps"}=3;} if (!defined($All{"numComps"})) {$All{"numComps"}=3;}
for (my $i=1;$i<=$All{"numComps"};$i++) { for (my $i=1;$i<=$All{"numComps"};$i++) {
if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) { if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) {
push( @FitTypes, $All{"FitType$i"} ); push( @FitTypes, $All{"FitType$i"} );
} }
} }
my @Hists = split( /,/, $All{"LRBF"} ); my @Hists = split( /,/, $All{"LRBF"} );
@ -124,8 +124,8 @@ sub CreateMSRUni {
# replaced by Func_T_Block # replaced by Func_T_Block
my $FUNCTIONS_Block = $EMPTY; my $FUNCTIONS_Block = $EMPTY;
if ($All{"FunctionsBlock"} ne $EMPTY) { if ($All{"FunctionsBlock"} ne $EMPTY) {
$FUNCTIONS_Block = "FUNCTIONS\n###############################################################\n".$All{"FunctionsBlock"}."\n"; $FUNCTIONS_Block = "FUNCTIONS\n###############################################################\n".$All{"FunctionsBlock"}."\n";
$Full_T_Block=$All{"Func_T_Block"}; $Full_T_Block=$All{"Func_T_Block"};
# remove all _N to end (may fail with large number of parameters) # remove all _N to end (may fail with large number of parameters)
$Full_T_Block =~ s/_\d\b//g; $Full_T_Block =~ s/_\d\b//g;
} }
@ -673,12 +673,13 @@ sub CreateTheory {
"statExpKTLF", "Frq Aa", "statExpKTLF", "Frq Aa",
"dynExpKTLF", "Frq Aa Lam", "dynExpKTLF", "Frq Aa Lam",
"combiLGKT", "Del Sgm", "combiLGKT", "Del Sgm",
"spinGlass", "Lam gam q", "spinGlass", "Lam gam q",
"rdAnisoHf", "Frq Lam", "rdAnisoHf", "Frq Lam",
"TFieldCos", "Phi Frq", "TFieldCos", "Phi Frq",
"internFld", "Alp Phi Frq LamT LamL", "Bessel", "Phi Frq",
"Bessel", "Phi Frq", "internFld", "Alp Phi Frq LamT LamL",
"internBsl", "Alp Phi Frq LamT LamL", "Bessel", "Phi Frq",
"internBsl", "Alp Phi Frq LamT LamL",
"abragam", "Sgm gam", "abragam", "Sgm gam",
"Meissner", "Phi Energy Field DeadLayer Lambda", "Meissner", "Phi Energy Field DeadLayer Lambda",
"skewedGss", "Phi Frq Sgmm Sgmp" "skewedGss", "Phi Frq Sgmm Sgmp"
@ -732,13 +733,13 @@ sub CreateTheory {
$T_Block = $T_Block . "\n" . "simplExpo " . $THEORY{'simplExpo'}; $T_Block = $T_Block . "\n" . "simplExpo " . $THEORY{'simplExpo'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'simplExpo'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'simplExpo'} );
$T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'}; $T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} );
} }
# Oscillationg gaussian # Oscillationg Gaussian
elsif ( $FitType eq "GaussianCos" ) { elsif ( $FitType eq "GaussianCos" ) {
$T_Block = $T_Block . "\n" . "simpleGss " . $THEORY{'simpleGss'}; $T_Block = $T_Block . "\n" . "simpleGss " . $THEORY{'simpleGss'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'simpleGss'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'simpleGss'} );
$T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'}; $T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} );
} }
@ -748,18 +749,26 @@ sub CreateTheory {
$T_Block = $T_Block . "\n" . "generExpo " . $THEORY{'generExpo'}; $T_Block = $T_Block . "\n" . "generExpo " . $THEORY{'generExpo'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'generExpo'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'generExpo'} );
$T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'}; $T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} );
} }
# Oscillationg Gaussian # Oscillationg Bessel Gaussian
elsif ( $FitType eq "GaussianCos" ) { elsif ( $FitType eq "GaussianBessel" ) {
$T_Block = $T_Block . "\n" . "simpelGss " . $THEORY{'simpelGss'}; $T_Block = $T_Block . "\n" . "simpleGss " . $THEORY{'simpleGss'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'simpleGss'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'simpleGss'} );
$T_Block = $T_Block . "\n" . "TFieldCos " . $THEORY{'TFieldCos'}; $T_Block = $T_Block . "\n" . "Bessel " . $THEORY{'Bessel'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'TFieldCos'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'Bessel'} );
} }
# Static Lorentzian KT # Oscillationg Bessel Exponential
elsif ( $FitType eq "ExponentialBessel" ) {
$T_Block = $T_Block . "\n" . "simplExpo " . $THEORY{'simplExpo'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'simplExpo'} );
$T_Block = $T_Block . "\n" . "Bessel " . $THEORY{'Bessel'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'Bessel'} );
}
# Static Lorentzian KT
elsif ( $FitType eq "SLKT" ) { elsif ( $FitType eq "SLKT" ) {
$T_Block = $T_Block . "\n" . "statExpKT " . $THEORY{'statExpKT'}; $T_Block = $T_Block . "\n" . "statExpKT " . $THEORY{'statExpKT'};
$Parameters = join( $SPACE, $Parameters, $THEORY{'statExpKT'} ); $Parameters = join( $SPACE, $Parameters, $THEORY{'statExpKT'} );
@ -1052,9 +1061,9 @@ sub PrepParamTable {
# loop over fitTypes # loop over fitTypes
if (!defined($All{"numComps"})) {$All{"numComps"}=3;} if (!defined($All{"numComps"})) {$All{"numComps"}=3;}
for (my $i=1;$i<=$All{"numComps"};$i++) { for (my $i=1;$i<=$All{"numComps"};$i++) {
if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) { if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) {
push( @FitTypes, $All{"FitType$i"} ); push( @FitTypes, $All{"FitType$i"} );
} }
} }
# Get theory block to determine the size of the table # Get theory block to determine the size of the table
@ -1249,9 +1258,9 @@ sub ExportParams {
# loop over fitTypes # loop over fitTypes
if (!defined($All{"numComps"})) {$All{"numComps"}=3;} if (!defined($All{"numComps"})) {$All{"numComps"}=3;}
for (my $i=1;$i<=$All{"numComps"};$i++) { for (my $i=1;$i<=$All{"numComps"};$i++) {
if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) { if ( defined($All{"FitType$i"}) &&$All{"FitType$i"} ne "None" ) {
push( @FitTypes, $All{"FitType$i"} ); push( @FitTypes, $All{"FitType$i"} );
} }
} }
# Get theory block to determine the size of the table # Get theory block to determine the size of the table