Ticket #9011 (closed: invalid)

Opened 7 years ago

Last modified 5 years ago

CalculateTransmission error propagation

Reported by: Gesner Passos Owned by: Gesner Passos
Priority: major Milestone: Release 3.2
Component: SANS Keywords:
Cc: doucetm@… Blocked By:
Blocking: Tester: Peter Parker

Description

While I was working on a ticket related to CalculateTransmission I've spotted an error on how we calculate the error propagation.

 // Take the log of each datapoint for fitting. Recalculate errors remembering that d(log(a))/da  = 1/a
      E[i] = std::abs(E[i]/Y[i]);
      Y[i] = std::log10(Y[i]);

In reality, d(log(a))/da = 1/(a*ln10) this means, that we should have this lines:

 // Take the log of each datapoint for fitting. Recalculate errors remembering that d(log(a))/da  = 1/(a*ln10)
      E[i] = 0.434*std::abs(E[i]/Y[i]);
      Y[i] = std::log10(Y[i]);

Attachments

check9011.py (1.1 KB) - added by Gesner Passos 7 years ago.
Script to show fitting in CalculateTransmission

Change History

comment:1 Changed 7 years ago by Gesner Passos

  • Blocked By 8977 added

(In #8977) While doing this ticket I've spotted an issue with the error propagation #9011

comment:1 Changed 7 years ago by Gesner Passos

  • Cc doucetm@… added
  • Blocked By 8977 removed

comment:2 Changed 7 years ago by Nick Draper

  • Status changed from new to assigned

Bulk move of tickets out of triage (new) to assigned at the introduction of the triage state

comment:3 Changed 7 years ago by Gesner Passos

  • Status changed from assigned to inprogress

comment:4 Changed 7 years ago by Gesner Passos

  • Blocked By 9030 added

The entire fit will change the way it calculates error. It will have impact on CalculateTransmission.

Changed 7 years ago by Gesner Passos

Script to show fitting in CalculateTransmission

comment:5 Changed 7 years ago by Gesner Passos

Although the description is correct. It happens that when it is supposed to go back from the error it is using the correct transformation to go back.

If you use the check9011. It uses the transformations Log/Fit/Exponential and Log10/Fit/10x to compare with the results from CalculateTransmission. And the answers are the same.

Hence, no reason to change.

comment:6 Changed 7 years ago by Gesner Passos

  • Blocked By 9030 removed

comment:7 Changed 7 years ago by Gesner Passos

  • Status changed from inprogress to verify
  • Resolution set to invalid

comment:8 Changed 7 years ago by Peter Parker

  • Status changed from verify to verifying
  • Tester set to Peter Parker

comment:9 Changed 7 years ago by Peter Parker

  • Status changed from verifying to closed

comment:10 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 9854

Note: See TracTickets for help on using tickets.