Skip to content

Commit 970d0a6

Browse files
committed
Removed copying iteration data into intermediate array. Now r-of-rho... results using python optimization and C# Solve are identical.
1 parent 2e60de0 commit 970d0a6

3 files changed

Lines changed: 3 additions & 13 deletions

File tree

inverse-solutions/r-of-fx-multi-op-prop-inversion.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,10 +73,7 @@ def CalculateReflectanceVsWavelengthFromChromophoreConcAndScatterer(
7373
modelDataLocal=np.concatenate(
7474
[np.array(forwardSolver.ROfFx(opsLocal, fxs[0]), dtype=float),
7575
np.array(forwardSolver.ROfFx(opsLocal, fxs[1]), dtype=float)])
76-
modelDataForReturn=Array.CreateInstance(float, len(wavelengths)*len(fxs))
77-
for i in range(0, len(fxs)*len(wavelengths)-1):
78-
modelDataForReturn[i] = modelDataLocal[i]
79-
return modelDataForReturn
76+
return modelDataLocal
8077

8178
# func for residual
8279
def residual(valuesSought, wavelengths, fxs, measuredROfFx, forwardSolver):

inverse-solutions/r-of-rho-multi-op-prop-inversion-using-csharp-solve.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,7 @@ def CalculateReflectanceFuncVsWavelengthFromChromophoreConcentration(
6464
chromophoreConcentration[0],chromophoreConcentration[1],chromophoreConcentration[2]))
6565
# Compute reflectance for local absorbers
6666
modelDataLocal = forwardSolverForInversion.ROfRho(opsLocal, params[1])
67-
modelDataLocalCSharp = Array.CreateInstance(float, len(wavelengths))
68-
# convert to C# format
69-
for i in range(0, len(params[0])-1):
70-
modelDataLocalCSharp[i] = modelDataLocal[i]
71-
return modelDataLocalCSharp
67+
return modelDataLocal
7268

7369
# Convert the Python function to a .NET Func delegate
7470
forward_func = Func[Array[float], Array[Object], Array[float]](CalculateReflectanceFuncVsWavelengthFromChromophoreConcentration)

inverse-solutions/r-of-rho-multi-op-prop-inversion.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,10 +65,7 @@ def CalculateReflectanceVsWavelengthFromChromophoreConcentration(
6565
# Compute reflectance for local absorbers
6666
modelDataLocal = Array.CreateInstance(float, len(wavelengths))
6767
modelDataLocal = forwardSolver.ROfRho(opsLocal, rho)
68-
modelDataForReturn= Array.CreateInstance(float, len(wavelengths))
69-
for i in range(0, len(wavelengths)):
70-
modelDataForReturn[i] = modelDataLocal[i]
71-
return modelDataForReturn
68+
return modelDataLocal
7269

7370
# func for residual
7471
def residual(chromophoreConcentration, wavelengths, rho, scatterer, measuredROfRho, forwardSolver):

0 commit comments

Comments
 (0)