Skip to content

Commit e02a313

Browse files
committed
All the parameters are being passed to the module. There are some errors running the code still.
1 parent fc70646 commit e02a313

File tree

5 files changed

+60
-60
lines changed

5 files changed

+60
-60
lines changed

src/Core/Algorithms/Legacy/Inverse/TikhonovAlgoAbstractBase.cc

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ bool TikhonovAlgoAbstractBase::checkInputMatrixSizes( const AlgorithmInput & inp
148148
// check source regularization matrix sizes
149149
if (sourceWeighting_)
150150
{
151-
if( get(regularizationSolutionSubcase).toInt()==solution_constrained )
151+
if( get(Parameters::regularizationSolutionSubcase).toInt()==solution_constrained )
152152
{
153153
// check that the matrix is of appropriate size (equal number of rows as columns in fwd matrix)
154154
if ( N != sourceWeighting_->ncols() )
@@ -158,7 +158,7 @@ bool TikhonovAlgoAbstractBase::checkInputMatrixSizes( const AlgorithmInput & inp
158158
}
159159
}
160160
// otherwise, if the source regularization is provided as the squared version (RR^T)
161-
else if ( get(regularizationSolutionSubcase).toInt()==solution_constrained_squared )
161+
else if ( get(Parameters::regularizationSolutionSubcase).toInt()==solution_constrained_squared )
162162
{
163163
// check that the matrix is of appropriate size and squared (equal number of rows as columns in fwd matrix)
164164
if ( ( N != sourceWeighting_->nrows() ) || ( N != sourceWeighting_->ncols() ) )
@@ -172,7 +172,7 @@ bool TikhonovAlgoAbstractBase::checkInputMatrixSizes( const AlgorithmInput & inp
172172
// check measurement regularization matrix sizes
173173
if (sensorWeighting_)
174174
{
175-
if (get(regularizationResidualSubcase).toInt() == residual_constrained)
175+
if (get(Parameters::regularizationResidualSubcase).toInt() == residual_constrained)
176176
{
177177
// check that the matrix is of appropriate size (equal number of rows as rows in fwd matrix)
178178
if(M != sensorWeighting_->ncols())
@@ -182,7 +182,7 @@ bool TikhonovAlgoAbstractBase::checkInputMatrixSizes( const AlgorithmInput & inp
182182
}
183183
}
184184
// otherwise if the source covariance matrix is provided in squared form
185-
else if ( get(regularizationResidualSubcase).toInt() == residual_constrained_squared )
185+
else if ( get(Parameters::regularizationResidualSubcase).toInt() == residual_constrained_squared )
186186
{
187187
// check that the matrix is of appropriate size and squared (equal number of rows as rows in fwd matrix)
188188
if( (M != sensorWeighting_->nrows()) || (M != sensorWeighting_->ncols()) )
@@ -210,8 +210,8 @@ AlgorithmOutput TikhonovAlgoAbstractBase::run(const AlgorithmInput & input) cons
210210
auto sensorWeighting_ = input.get<Matrix>(TikhonovAlgoAbstractBase::WeightingInSensorSpace);
211211

212212
// get Parameters
213-
auto RegularizationMethod_gotten = get(RegularizationMethod).toString();
214-
auto TikhonovImplementation_gotten = get(TikhonovImplementation).toString();
213+
auto RegularizationMethod_gotten = getOption(Parameters::RegularizationMethod);
214+
auto TikhonovImplementation_gotten = get(Parameters::TikhonovImplementation).toString();
215215

216216
// Alocate Variable
217217
DenseMatrix solution;
@@ -223,18 +223,18 @@ AlgorithmOutput TikhonovAlgoAbstractBase::run(const AlgorithmInput & input) cons
223223

224224
// Determine specific Tikhonov Implementation
225225
TikhonovImpl *algoImpl;
226-
if ( get(RegularizationMethod).toInt() == standardTikhonov ){
226+
if ( get(Parameters::RegularizationMethod).toInt() == standardTikhonov ){
227227
// get Parameters
228-
int regularizationChoice_ = get(regularizationChoice).toInt();
229-
int regularizationSolutionSubcase_ = get(regularizationSolutionSubcase).toInt();
230-
int regularizationResidualSubcase_ = get(regularizationResidualSubcase).toInt();
228+
int regularizationChoice_ = get(Parameters::regularizationChoice).toInt();
229+
int regularizationSolutionSubcase_ = get(Parameters::regularizationSolutionSubcase).toInt();
230+
int regularizationResidualSubcase_ = get(Parameters::regularizationResidualSubcase).toInt();
231231

232232
algoImpl = new SolveInverseProblemWithStandardTikhonovImpl( *castMatrix::toDense(forwardMatrix_), *castMatrix::toDense(measuredData_), *castMatrix::toDense(sourceWeighting_), *castMatrix::toDense(sensorWeighting_), regularizationChoice_, regularizationSolutionSubcase_, regularizationResidualSubcase_);
233233
}
234-
else if ( get(RegularizationMethod).toInt() == TikhonovSVD ){
234+
else if ( get(Parameters::RegularizationMethod).toInt() == TikhonovSVD ){
235235
// algoImpl = new SolveInverseProblemWithTikhonovSVD_impl( *castMatrix::toDense(forwardMatrix_), *castMatrix::toDense(measuredData_), *castMatrix::toDense(sourceWeighting_), *castMatrix::toDense(sensorWeighting_));
236236
}
237-
else if ( get(RegularizationMethod).toInt() == TikhonovTSVD ){
237+
else if ( get(Parameters::RegularizationMethod).toInt() == TikhonovTSVD ){
238238
THROW_ALGORITHM_PROCESSING_ERROR("Tikhonov TSVD not implemented yet");
239239
}
240240
else{
@@ -249,12 +249,12 @@ AlgorithmOutput TikhonovAlgoAbstractBase::run(const AlgorithmInput & input) cons
249249
if (RegularizationMethod_gotten == "single")
250250
{
251251
// Use single fixed lambda value, entered in UI
252-
lambda_ = get(LambdaFromDirectEntry).toDouble();
252+
lambda_ = get(Parameters::LambdaFromDirectEntry).toDouble();
253253
}
254254
else if (RegularizationMethod_gotten == "slider")
255255
{
256256
// Use single fixed lambda value, select via slider
257-
lambda_ = get(LambdaSliderValue).toDouble();
257+
lambda_ = get(Parameters::LambdaSliderValue).toDouble();
258258
}
259259
}
260260
else if (RegularizationMethod_gotten == "lcurve")
@@ -308,9 +308,9 @@ double TikhonovAlgoAbstractBase::computeLcurve( const SCIRun::Core::Algorithms::
308308
auto sensorWeighting_ = input.get<Matrix>(TikhonovAlgoAbstractBase::WeightingInSensorSpace);
309309

310310
// define the step size of the lambda vector to be computed (distance between min and max divided by number of desired lambdas in log scale)
311-
const int nLambda = get(LambdaNum).toInt();
312-
const int lambdaMin_ = get(LambdaMin).toDouble();
313-
const int lambdaMax_ = get(LambdaMax).toDouble();
311+
const int nLambda = get(Parameters::LambdaNum).toInt();
312+
const int lambdaMin_ = get(Parameters::LambdaMin).toDouble();
313+
const int lambdaMax_ = get(Parameters::LambdaMax).toDouble();
314314
const double lam_step = pow(10.0, lambdaMax_ / lambdaMin_) / (nLambda-1);
315315
double lambda = 0;
316316

src/Core/Algorithms/Legacy/Inverse/TikhonovAlgoAbstractBase.h

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -70,19 +70,19 @@ namespace Inverse {
7070
static const AlgorithmOutputName RegInverse;
7171

7272
// define parameter names
73-
static const AlgorithmParameterName TikhonovImplementation;
74-
static const AlgorithmParameterName RegularizationMethod;
75-
static const AlgorithmParameterName regularizationChoice;
76-
static const AlgorithmParameterName regularizationSolutionSubcase;
77-
static const AlgorithmParameterName regularizationResidualSubcase;
78-
static const AlgorithmParameterName LambdaFromDirectEntry;
79-
static const AlgorithmParameterName LambdaMin;
80-
static const AlgorithmParameterName LambdaMax;
81-
static const AlgorithmParameterName LambdaNum;
82-
static const AlgorithmParameterName LambdaResolution;
83-
static const AlgorithmParameterName LambdaSliderValue;
84-
static const AlgorithmParameterName LambdaCorner;
85-
static const AlgorithmParameterName LCurveText;
73+
// static const AlgorithmParameterName TikhonovImplementation;
74+
// static const AlgorithmParameterName RegularizationMethod;
75+
// static const AlgorithmParameterName regularizationChoice;
76+
// static const AlgorithmParameterName regularizationSolutionSubcase;
77+
// static const AlgorithmParameterName regularizationResidualSubcase;
78+
// static const AlgorithmParameterName LambdaFromDirectEntry;
79+
// static const AlgorithmParameterName LambdaMin;
80+
// static const AlgorithmParameterName LambdaMax;
81+
// static const AlgorithmParameterName LambdaNum;
82+
// static const AlgorithmParameterName LambdaResolution;
83+
// static const AlgorithmParameterName LambdaSliderValue;
84+
// static const AlgorithmParameterName LambdaCorner;
85+
// static const AlgorithmParameterName LCurveText;
8686

8787
// Define algorithm choices
8888
enum TikhonovImplementationChoice {

src/Interface/Modules/Inverse/SolveInverseProblemWithTikhonovDialog.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ SolveInverseProblemWithTikhonovDialog::SolveInverseProblemWithTikhonovDialog(con
6060
addDoubleLineEditManager(lCurveMinLineEdit_, Parameters::LambdaMin);
6161
addDoubleLineEditManager(lCurveMaxLineEdit_, Parameters::LambdaMax);
6262

63-
addDoubleSpinBoxManager(lambdaSliderDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaSliderValue);
63+
addDoubleSpinBoxManager(lambdaSliderDoubleSpinBox_, Parameters::LambdaSliderValue);
6464

6565
addRadioButtonGroupManager({ autoRadioButton_, underRadioButton_, overRadioButton_ }, Parameters::regularizationChoice);
6666
addRadioButtonGroupManager({ solutionConstraintRadioButton_, squaredSolutionRadioButton_ }, Parameters::regularizationSolutionSubcase);

src/Interface/Modules/Inverse/SolveInverseProblemWithTikhonovSVDDialog.cc

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,21 +50,21 @@ SolveInverseProblemWithTikhonovSVDDialog::SolveInverseProblemWithTikhonovSVDDial
5050

5151
WidgetStyleMixin::tabStyle(inputTabWidget_);
5252

53-
addDoubleLineEditManager(lCurveLambdaLineEdit_, TikhonovAlgoAbstractBase::LambdaCorner);
54-
addSpinBoxManager(lambdaNumberSpinBox_, TikhonovAlgoAbstractBase::LambdaNum);
55-
addDoubleSpinBoxManager(lambdaDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaFromDirectEntry);
56-
addDoubleSpinBoxManager(lambdaMinDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaMin);
57-
addDoubleSpinBoxManager(lambdaMaxDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaMax);
58-
addDoubleSpinBoxManager(lambdaResolutionDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaResolution);
53+
addDoubleLineEditManager(lCurveLambdaLineEdit_, Parameters::LambdaCorner);
54+
addSpinBoxManager(lambdaNumberSpinBox_, Parameters::LambdaNum);
55+
addDoubleSpinBoxManager(lambdaDoubleSpinBox_, Parameters::LambdaFromDirectEntry);
56+
addDoubleSpinBoxManager(lambdaMinDoubleSpinBox_, Parameters::LambdaMin);
57+
addDoubleSpinBoxManager(lambdaMaxDoubleSpinBox_, Parameters::LambdaMax);
58+
addDoubleSpinBoxManager(lambdaResolutionDoubleSpinBox_, Parameters::LambdaResolution);
5959

60-
addDoubleSpinBoxManager(lambdaSliderDoubleSpinBox_, TikhonovAlgoAbstractBase::LambdaSliderValue);
60+
addDoubleSpinBoxManager(lambdaSliderDoubleSpinBox_, Parameters::LambdaSliderValue);
6161

62-
addRadioButtonGroupManager({ autoRadioButton_, underRadioButton_, overRadioButton_ }, TikhonovAlgoAbstractBase::regularizationChoice);
63-
addRadioButtonGroupManager({ solutionConstraintRadioButton_, squaredSolutionRadioButton_ }, TikhonovAlgoAbstractBase::regularizationSolutionSubcase);
64-
addRadioButtonGroupManager({ residualConstraintRadioButton_, squaredResidualSolutionRadioButton_ }, TikhonovAlgoAbstractBase::regularizationResidualSubcase);
62+
addRadioButtonGroupManager({ autoRadioButton_, underRadioButton_, overRadioButton_ }, Parameters::regularizationChoice);
63+
addRadioButtonGroupManager({ solutionConstraintRadioButton_, squaredSolutionRadioButton_ }, Parameters::regularizationSolutionSubcase);
64+
addRadioButtonGroupManager({ residualConstraintRadioButton_, squaredResidualSolutionRadioButton_ }, Parameters::regularizationResidualSubcase);
6565

66-
addComboBoxManager(lambdaMethodComboBox_, TikhonovAlgoAbstractBase::RegularizationMethod);
67-
addTextEditManager(lCurveTextEdit_, TikhonovAlgoAbstractBase::LCurveText);
66+
addComboBoxManager(lambdaMethodComboBox_, Parameters::RegularizationMethod);
67+
addTextEditManager(lCurveTextEdit_, Parameters::LCurveText);
6868

6969
connect(lambdaSlider_, SIGNAL(valueChanged(int)), this, SLOT(setSpinBoxValue(int)));
7070
connect(lambdaSliderDoubleSpinBox_, SIGNAL(valueChanged(double)), this, SLOT(setSliderValue(double)));

src/Modules/Legacy/Inverse/SolveInverseProblemWithTikhonovSVD.cc

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -65,19 +65,19 @@ SolveInverseProblemWithTikhonovSVD::SolveInverseProblemWithTikhonovSVD() : Modul
6565
void SolveInverseProblemWithTikhonovSVD::setStateDefaults()
6666
{
6767

68-
// setStateIntFromAlgo(TikhonovAlgoAbstractBase::TikhonovImplementation);
69-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::RegularizationMethod);
70-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::regularizationChoice);
71-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaFromDirectEntry);
72-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaMin);
73-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaMax);
74-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaNum);
75-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaResolution);
76-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaSliderValue);
77-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LambdaCorner);
78-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::LCurveText);
79-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::regularizationSolutionSubcase);
80-
setStateIntFromAlgo(TikhonovAlgoAbstractBase::regularizationResidualSubcase);
68+
// setStateIntFromAlgo(Parameters::TikhonovImplementation);
69+
setStateIntFromAlgo(Parameters::RegularizationMethod);
70+
setStateIntFromAlgo(Parameters::regularizationChoice);
71+
setStateIntFromAlgo(Parameters::LambdaFromDirectEntry);
72+
setStateIntFromAlgo(Parameters::LambdaMin);
73+
setStateIntFromAlgo(Parameters::LambdaMax);
74+
setStateIntFromAlgo(Parameters::LambdaNum);
75+
setStateIntFromAlgo(Parameters::LambdaResolution);
76+
setStateIntFromAlgo(Parameters::LambdaSliderValue);
77+
setStateIntFromAlgo(Parameters::LambdaCorner);
78+
setStateIntFromAlgo(Parameters::LCurveText);
79+
setStateIntFromAlgo(Parameters::regularizationSolutionSubcase);
80+
setStateIntFromAlgo(Parameters::regularizationResidualSubcase);
8181
}
8282

8383
// execute function
@@ -96,10 +96,10 @@ void SolveInverseProblemWithTikhonovSVD::execute()
9696
if (needToExecute())
9797
{
9898
// set parameters
99-
algo().setOption( TikhonovAlgoAbstractBase::TikhonovImplementation, "TikhonovSVD" );
100-
algo().setOption(TikhonovAlgoAbstractBase::regularizationChoice, get_state()->getValue(TikhonovAlgoAbstractBase::regularizationChoice).toString() );
101-
algo().setOption(TikhonovAlgoAbstractBase::regularizationSolutionSubcase, get_state()->getValue(TikhonovAlgoAbstractBase::regularizationSolutionSubcase).toString() );
102-
algo().setOption(TikhonovAlgoAbstractBase::regularizationResidualSubcase, get_state()->getValue(TikhonovAlgoAbstractBase::regularizationResidualSubcase).toString() );
99+
algo().setOption( Parameters::TikhonovImplementation, "TikhonovSVD" );
100+
algo().setOption(Parameters::regularizationChoice, get_state()->getValue(Parameters::regularizationChoice).toString() );
101+
algo().setOption(Parameters::regularizationSolutionSubcase, get_state()->getValue(Parameters::regularizationSolutionSubcase).toString() );
102+
algo().setOption(Parameters::regularizationResidualSubcase, get_state()->getValue(Parameters::regularizationResidualSubcase).toString() );
103103

104104

105105
// run

0 commit comments

Comments
 (0)