diff --git a/src/external/MuSRFitGUI/MSR.pm b/src/external/MuSRFitGUI/MSR.pm index 389e16f2..d3d2fd54 100755 --- a/src/external/MuSRFitGUI/MSR.pm +++ b/src/external/MuSRFitGUI/MSR.pm @@ -122,7 +122,6 @@ sub CreateMSR { # First create the THEORY Block my ($Full_T_Block,$Paramcomp_ref)=MSR::CreateTheory(@FitTypes); - my @Paramcomp = @$Paramcomp_ref; # Counter for RUNS @@ -147,8 +146,7 @@ sub CreateMSR { # $shcount is a counter for shared parameters if ( $#RUNS == 0 ) { my $shcount = 1; - } - else { + } else { if ( $All{"Sh_Alpha"} == 1 ) { my $shcount = 1; } else { @@ -493,6 +491,7 @@ sub CreateMSRSingleHist { $RUNSType = 1; } + # Until here identical to sub CreateMSR # $shcount is a counter for shared parameters if ( $#RUNS == 0 && $#Hists == 0) { my $shcount = 1; @@ -517,6 +516,10 @@ sub CreateMSRSingleHist { # For a single histogram fit we basically need to repeat this for each hist # However, "physical" parameters such as Asymmetry, relaxation etc. should # be the same for all histograms +# We distinguich between sharing among different runs to common parameters +# for different histograms. The first is done in the usual "Sharing" schame, +# while the second has to be done in the functions block. This can be done +# in a consistent, non-confusing algorithm foreach my $Hist (@Hists) { # Prepare the Parameters and initial values block diff --git a/src/external/MuSRFitGUI/MuSRFit.ui b/src/external/MuSRFitGUI/MuSRFit.ui index 8e0802db..5768642a 100755 --- a/src/external/MuSRFitGUI/MuSRFit.ui +++ b/src/external/MuSRFitGUI/MuSRFit.ui @@ -2141,7 +2141,7 @@ - Shared Parameters + Shared parameters among different runs AlignLeft @@ -3007,134 +3007,6 @@ FFT/RRF - - - RRFBox - - - - 6 - 135 - 547 - 125 - - - - RRF - - - - layout35 - - - - 10 - 18 - 265 - 100 - - - - - unnamed - - - 5 - - - 5 - - - - textLabel1_6_2_2 - - - Phase - - - - - textLabel1_6 - - - Frequency - - - - - textLabel1_6_2_4 - - - - - - - - RRFFrq - - - - - - - - textLabel1_6_2_3 - - - - - - - - RRFPack - - - - - textLabel1_6_2 - - - Packing - - - - - - MHz - - - - - kHz - - - - - Mc/s - - - - - G - - - - - T - - - - RRFUnits - - - - - RRFPhase - - - - - FourierBox @@ -3148,7 +3020,7 @@ - Fourier + Fourier transform parameters @@ -3409,6 +3281,134 @@ + + + RRFBox + + + + 6 + 135 + 547 + 125 + + + + Rotatting reference frame (RRF) parameters + + + + layout35 + + + + 10 + 18 + 265 + 100 + + + + + unnamed + + + 5 + + + 5 + + + + textLabel1_6_2_2 + + + Phase + + + + + textLabel1_6 + + + Frequency + + + + + textLabel1_6_2_4 + + + + + + + + RRFFrq + + + + + + + + textLabel1_6_2_3 + + + + + + + + RRFPack + + + + + textLabel1_6_2 + + + Packing + + + + + + MHz + + + + + kHz + + + + + Mc/s + + + + + G + + + + + T + + + + RRFUnits + + + + + RRFPhase + + + + + diff --git a/src/external/MuSRFitGUI/devel/MuSRFit.pl b/src/external/MuSRFitGUI/devel/MuSRFit.pl index 3d11f3e5..23fb2fc7 100755 --- a/src/external/MuSRFitGUI/devel/MuSRFit.pl +++ b/src/external/MuSRFitGUI/devel/MuSRFit.pl @@ -1,6 +1,6 @@ # Form implementation generated from reading ui file 'MuSRFit.ui' # -# Created: Thu Mar 25 16:29:56 2010 +# Created: Mon May 31 15:10:55 2010 # by: The PerlQt User Interface Compiler (puic) # # WARNING! All changes made in this file will be lost! @@ -3974,12 +3974,13 @@ sub AppendToFunctions sub ResetFunctions { + my %All=CreateAllInput(); # Clear drop down parameters menu # CParamsCombo->clear(); # Then clear the text ConstraintLine->setText(""); FunctionsBlock->setText(""); -# my $Full_T_Block= $All{"Full_T_Block"}; + my $Full_T_Block= $All{"Full_T_Block"}; TheoryBlock->setText($Full_T_Block); diff --git a/src/external/MuSRFitGUI/devel/MuSRFit.ui.h b/src/external/MuSRFitGUI/devel/MuSRFit.ui.h index 797e00c0..64aac65d 100755 --- a/src/external/MuSRFitGUI/devel/MuSRFit.ui.h +++ b/src/external/MuSRFitGUI/devel/MuSRFit.ui.h @@ -824,12 +824,13 @@ void MuSRFitform::AppendToFunctions() void MuSRFitform::ResetFunctions() { + my %All=CreateAllInput(); # Clear drop down parameters menu # CParamsCombo->clear(); # Then clear the text ConstraintLine->setText(""); FunctionsBlock->setText(""); -# my $Full_T_Block= $All{"Full_T_Block"}; + my $Full_T_Block= $All{"Full_T_Block"}; TheoryBlock->setText($Full_T_Block); } diff --git a/src/external/MuSRFitGUI/musrfit.cgi b/src/external/MuSRFitGUI/musrfit.cgi index f74cf683..4503745f 100755 --- a/src/external/MuSRFitGUI/musrfit.cgi +++ b/src/external/MuSRFitGUI/musrfit.cgi @@ -248,7 +248,12 @@ elsif ( $Step == 2 ) { elsif ( $Step <= 6 && $Step >= 3 ) { # Then create appropriate file - ($Full_T_Block,$Paramcomp_ref)= MSR::CreateMSR(\%AllParameters); + if ($All{"FitAsyType"} eq "SingleHist") { + ($Full_T_Block,$Paramcomp_ref)= MSR::CreateMSR(\%AllParameters); + } else { + ($Full_T_Block,$Paramcomp_ref)= MSR::CreateMSRSingleHist(\%AllParameters); + } + @Paramcomp = @$Paramcomp_ref; if ( $Step == 3 ) {