Commit 4b59a384 authored by Tung, Chi-Huan's avatar Tung, Chi-Huan
Browse files

updated tool description

parent 93a0fde1
Loading
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
<tool id="mlsans_fit_Yukawa_sq" name="fit_IQ"  profile="22.04" version="0.1.1">
<tool id="mlsans_fit_Yukawa_sq" name="fit_IQ"  profile="22.04" version="0.1.2">
  <description></description>
    <requirements>
        <container type="docker">code.ornl.gov:4567/ndip/tool-sources/ml-assisted-sans-data-analysis/fit_yukawa_sq:c841403a</container>
        <container type="docker">code.ornl.gov:4567/ndip/tool-sources/ml-assisted-sans-data-analysis/fit_yukawa_sq:93a0fde1</container>
    </requirements>
    <command detect_errors="exit_code"><![CDATA[
        python3 /src/curvefit.py -i $input $C $I_inc $sigma $d_sigma $phi $kappa $A || echo python finished
        python3 /src/curvefit.py -i $input $C $I_inc $sigma $d_sigma $phi $kappa $A || echo python finished && mv output.png $output
    ]]></command>
    <inputs>
        <param name="input" type="text" value="/src/example_IQ.csv" optional="false" label="ASCII data"/>
        <param name="C" type="text" value="5000 1000 8000" label="C" optional="false" help="Contrast"/>
        <param name="I_inc" type="text" value="0.2 0.1 0.5" label="I_inc" optional="false" help="Incoherent background"/>
        <param name="C" type="text" value="4000 3500 4500" label="C" optional="false" help="Contrast"/>
        <param name="I_inc" type="text" value="0.5 0.1 2" label="I_inc" optional="false" help="Incoherent background"/>
        <param name="sigma" type="text" value="1 0.9 1.1" label="σ" optional="false" help="Particle diameter"/>
        <param name="d_sigma" type="text" value="0.05 0.01 0.1" label="d_σ" optional="false" help="Particle size polydispersity"/>
        <param name="phi" type="text" value="0.2 0.1 0.5" label="Φ" optional="false" help="Volume fraction"/>
        <param name="kappa" type="text" value="0.1 0.01 0.5" label="1/κD" optional="false" help="Screening constant"/>
        <param name="d_sigma" type="text" value="0.07 0.02 0.1" label="d_σ" optional="false" help="Particle size polydispersity"/>
        <param name="phi" type="text" value="0.1 0.05 0.25" label="Φ" optional="false" help="Volume fraction"/>
        <param name="kappa" type="text" value="0.2 0.1 0.3" label="1/κD" optional="false" help="Screening constant"/>
        <param name="A" type="text" value="10 1 20" label="βA" optional="false" help="Repulsion strength"/>
    </inputs>
	
    <outputs>
        <data name="output" format="txt" label="fitting results">
        <data name="output" format="png" label="fitting results">
        </data>
    </outputs>
    <help><![CDATA[
        Fit the input I(Q) curve
        Fit the input I(Q) curve. Initial guess, lower bound and upper bound are separated using spaces.
]]></help>
</tool>
+3 −3
Original line number Diff line number Diff line
@@ -121,7 +121,7 @@ def fit(initial_guess, file_name):
    ax = plt.subplot(1, 1, 1)

    ax.plot(QD_exp,IQ_exp,'.b',label='SANS data')
    ax.plot(QD_exp,IQ_th(result.params, QD),'-r',label='SANS data')
    ax.plot(QD_exp,IQ_th(result.params, QD),'-r',label='NN')

    ax.set_yscale('log')
    ax.set_xscale('log')
@@ -132,12 +132,12 @@ def fit(initial_guess, file_name):
    ax.set_ylabel(r'$I(QD)$',fontsize=20)
    ax.tick_params(direction='in', axis='both', which='both', labelsize=18, pad=10)
    ax.legend(fontsize=16,frameon=False)
    plt.savefig('output.png')
    plt.savefig('/src/output.png')
    # plt.show()

    # print the result
    print('Printing results to output.txt')
    with open('/src/output.txt', 'w') as f:
    with open('/src/output.txt', 'a') as f:
        for param in result.params.values():
            if param.stderr is None: 
                string = "%s:  %f +/- undetermined (init = %f)" % (param.name, param.value, param.init_value)