VPNurbsForwardSolver MembersVirtual Photonics - VTS Library
Virtual Photonics

The NurbsForwardSolver type exposes the following members.
Constructors

  NameDescription
Public methodNurbsForwardSolver 
Default class constructor called by solver factory.
Public methodNurbsForwardSolver(INurbs)
Constructor used to create an istance of NurbsForwardSolver with the same stub NurbsGenerator for all the NurbsGenerators. Used for Unit Tests of the class.
Public methodNurbsForwardSolver(INurbs, INurbs)
Constructor which creates an istance of NurbsForwardSolver setting the NurbsGenerators to the values passed as Input.
Back to Top
Methods

  NameDescription
Protected methodAfterPropertyChanged
Derived classes can override this method to execute logic after a property is set. The base implementation does nothing.
(Inherited from BindableObject.)
Public methodCheckIfValidOutput
Returns zero if the input value is smaller then zero of if it is NaN. Negative value are not possible for the measured reflectance. The values calculated with the NURBS could be negative when the time point is very close to the 'physical' beginning of the curve R(t) due to obscilatoions of the interpolations used to capture the ascent of the curve.
Public methodOnlineEquals
Determines whether the specified OnlineObject is equal to the current OnlineObject.
(Inherited from OnlineObject.)
Protected methodOnlineFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from OnlineObject.)
Public methodFluenceOfFxAndZ( OpticalProperties ,  Double ,  Double )
Overload of FluenceOfFxAndZ function. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and 'zs'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfFxAndZ(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Evaluates the spatial frequancy resolved fluence.
(Overrides ForwardSolverBase FluenceOfFxAndZ(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodFluenceOfFxAndZAndFt( OpticalProperties ,  Double ,  Double ,  Double )
Overload of FluenceOfFxAndZAndFt function. Determines reflectances at optical properties 'ops', spatial frequency 'fx', 'zs' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfFxAndZAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double )
Evaluates the spatial frequancy and temporal frequency resolved fluence.
(Overrides ForwardSolverBase FluenceOfFxAndZAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double ).)
Public methodFluenceOfFxAndZAndTime( OpticalProperties ,  Double ,  Double ,  Double )
Overload of FluenceOfFxAndZAndTime function. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs', 'zs' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfFxAndZAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double )
Evaluates the spatial frequancy and time resolved fluence.
(Overrides ForwardSolverBase FluenceOfFxAndZAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double ).)
Public methodFluenceOfRhoAndZ( OpticalProperties ,  Double ,  Double )
Overload of FluenceOfRhoAndZ function. Determines reflectances at optical properties 'ops', source-detector separations 'rhos' and 'zs'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfRhoAndZ(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Evaluates the radial resolved fluence.
Remarks

Not implemented.
(Overrides ForwardSolverBase FluenceOfRhoAndZ(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodFluenceOfRhoAndZAndFt( OpticalProperties ,  Double ,  Double ,  Double )
Overload of FluenceOfRhoAndZAndFt function. Determines reflectances at optical properties 'ops', source-detector separations 'rhos', 'zs' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfRhoAndZAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double )
Evaluates the temporal frequency and radial resolved fluence.
(Overrides ForwardSolverBase FluenceOfRhoAndZAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double ).)
Public methodFluenceOfRhoAndZAndTime( OpticalProperties ,  Double ,  Double ,  Double )
Overload of FluenceOfRhoAndZAndTime function. Determines reflectances at optical properties 'ops', source-detector separations 'rhos', 'zs' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodFluenceOfRhoAndZAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double )
Evaluates the temporal and radial resolved fluence.
(Overrides ForwardSolverBase FluenceOfRhoAndZAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double , IEnumerable Double ).)
Public methodOnlineGetHashCode
Serves as a hash function for a particular type.
(Inherited from OnlineObject.)
Public methodOnlineGetType
Gets the OnlineType of the current instance.
(Inherited from OnlineObject.)
Protected methodOnlineMemberwiseClone
Creates a shallow copy of the current OnlineObject.
(Inherited from OnlineObject.)
Public methodOnPropertyChanged
Attempts to raise the PropertyChanged event, and invokes the virtual AfterPropertyChanged method, regardless of whether the event was raised or not.
(Inherited from BindableObject.)
Public methodROfFx(OpticalProperties,  Double )
Overload of ROfFx. Determines reflectances at optical properties 'op' and spatial frequencies 'fxs'
(Inherited from ForwardSolverBase.)
Public methodROfFx( OpticalProperties , Double)
Overload of ROfFx. Determines reflectances at optical properties 'ops' and spatial frequency 'fx'
(Inherited from ForwardSolverBase.)
Public methodROfFx( OpticalProperties ,  Double )
Convenience array overload of ROfFx. Determines reflectances at optical properties 'ops' and spatial frequencies 'fxs'
(Inherited from ForwardSolverBase.)
Public methodROfFx(IEnumerable OpticalProperties , IEnumerable Double )
Returns the spatial frequancy resolved reflectance at fx applying the scaling on the reference fx-time resolved reflectance. Than integrates analitically the isoprametric NURBS curve over time if fx is on the surface. If fx is out of range it returns 0.
(Overrides ForwardSolverBase ROfFx(IEnumerable OpticalProperties , IEnumerable Double ).)
Public methodROfFx(OpticalProperties, Double)
Calls its vectorized version to evaluate the spatial frequency resolved reflectance for the spatial frequancy fx, for the specified optical properties.
(Overrides ForwardSolverBase ROfFx(OpticalProperties, Double).)
Public methodROfFxAndFt(OpticalProperties, Double,  Double )
Overload of ROfFxAndFt. Determines reflectances at optical properties 'op', spatial frequency 'fx' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt(OpticalProperties,  Double , Double)
Overload of ROfFxAndFt. Determines reflectances at optical properties 'op', spatial frequencies 'fxs' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt(OpticalProperties,  Double ,  Double )
Overload of ROfFxAndFt. Determines reflectances at optical properties 'op', spatial frequencies 'fxs' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt( OpticalProperties , Double, Double)
Overload of ROfFxAndFt. Determines reflectances at optical properties 'ops', spatial frequency 'fx' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt( OpticalProperties , Double,  Double )
Overload of ROfFxAndFt. Determines reflectances at optical properties 'ops', spatial frequency 'fx' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt( OpticalProperties ,  Double , Double)
Overload of ROfFxAndFt. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt( OpticalProperties ,  Double ,  Double )
Convenience array overload of ROfFxAndFt. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Evaluates the spatial frequency and temporal frequency resolved reflectance calculating the Fourier transform of the NURBS curve R(t) at the required spatial frequency for the specified optical properties. The computed FT is analitycal or discrete according to the boolean value 'analyticIntegration'.
(Overrides ForwardSolverBase ROfFxAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodROfFxAndFt(OpticalProperties, Double, Double)
Calls its vectorized overload to evaluate the spatial frequency and temporal frequency resolved reflectance.
(Overrides ForwardSolverBase ROfFxAndFt(OpticalProperties, Double, Double).)
Public methodROfFxAndTime(OpticalProperties, Double,  Double )
Overload of ROfFxAndTime. Determines reflectances at optical properties 'op', spatial frequency 'fx' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime(OpticalProperties,  Double , Double)
Overload of ROfFxAndTime. Determines reflectances at optical properties 'op', spatial frequencies 'fxs' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime(OpticalProperties,  Double ,  Double )
Overload of ROfFxAndTime. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime( OpticalProperties , Double, Double)
Overload of ROfFxAndTime. Determines reflectances at optical properties 'ops', spatial frequency 'fx' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime( OpticalProperties , Double,  Double )
Overload of ROfFxAndTime. Determines reflectances at optical properties 'ops', spatial frequency 'fx' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime( OpticalProperties ,  Double , Double)
Overload of ROfFxAndTime. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime( OpticalProperties ,  Double ,  Double )
Convenience array overload of ROfFx. Determines reflectances at optical properties 'ops', spatial frequencies 'fxs' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfFxAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Returns the reflectance at spatial frequency, fx, and time, t, scaling the reference fx-time resolved reflectance. If a point of the reference reflectance outside the time/spatial frequancy range of the surface is required, the value is extrapolated using the first derivative along the time/spatial frequency dimension. If the required point is outside both ranges a linear combination of the two derivatives is used.
(Overrides ForwardSolverBase ROfFxAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodROfFxAndTime(OpticalProperties, Double, Double)
Calls its vectorized version to evaluate the time and space resolved reflectance for a spatial frequancy, fx, and at time, t, for the specified optical properties.
(Overrides ForwardSolverBase ROfFxAndTime(OpticalProperties, Double, Double).)
Public methodROfRho(OpticalProperties,  Double )
Overload of ROfRho. Determines reflectances at optical properties 'op' and source-detector separations 'rhos'
(Inherited from ForwardSolverBase.)
Public methodROfRho( OpticalProperties , Double)
Overload of ROfRho. Determines reflectances at optical properties 'ops' and source-detector separation 'rho'
(Inherited from ForwardSolverBase.)
Public methodROfRho( OpticalProperties ,  Double )
Convenience array overload of ROfRho. Determines reflectances at optical properties 'ops' and source-detector separations 'rhos'
(Inherited from ForwardSolverBase.)
Public methodROfRho(IEnumerable OpticalProperties , IEnumerable Double )
Returns the steady state reflectance for the specified optical properties at source detector separations rhos. The radial distance rho is scaled to the reference space to evaluate rho_ref. If rho_ref is on the reference surface the reference rho-time resolved reflectance is scaled and the isoprametric Nurbs curve is integrated analitically over time. To evaluate the integral of the reflectance out of the time range it evaluates the linear approximation of the logarithm of the tail of the curve and integrates it from tMax to infinity. If rho_ref is out of range the method returns 0.
(Overrides ForwardSolverBase ROfRho(IEnumerable OpticalProperties , IEnumerable Double ).)
Public methodROfRho(OpticalProperties, Double)
Calls its vectorized version to evaluate the steady state reflectance at a source detector separation rho, for the specified optical properties.
(Overrides ForwardSolverBase ROfRho(OpticalProperties, Double).)
Public methodROfRhoAndFt(OpticalProperties, Double,  Double )
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'op', source-detector separation 'rho' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt(OpticalProperties,  Double , Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'op', source-detector separations 'rhos' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt(OpticalProperties,  Double ,  Double )
Overload of ROfRhoAndFt. Determines reflectances at optical properties 'op', source-detector separations 'rhos' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt( OpticalProperties , Double, Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separation 'rho' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt( OpticalProperties , Double,  Double )
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separation 'rho' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt( OpticalProperties ,  Double , Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separations 'rhos' and time frequency 'ft'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt( OpticalProperties ,  Double ,  Double )
Convenience array overload of ROfRhoAndFt. Determines reflectances at optical properties 'ops', source-detector separations 'rhos' and time frequencies 'fts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Evaluates the temporal frequency and space resolved reflectance at a source detector separation rho for a modulation frequency ft,for the specified optical properties. It calculates the Fourier transform of the NURBS curve R(t) at the required source detector separation. The used FT is analitycal or discrete according to the boolean value 'analyticIntegration'.
(Overrides ForwardSolverBase ROfRhoAndFt(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodROfRhoAndFt(OpticalProperties, Double, Double)
Calls its vectorized version to evaluate the temporal frequency and space resolved reflectance at a source detector separation rho for a modulation frequency ft, for the specified optical properties.
(Overrides ForwardSolverBase ROfRhoAndFt(OpticalProperties, Double, Double).)
Public methodROfRhoAndTime(OpticalProperties, Double,  Double )
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'op', source-detector separation 'rho' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime(OpticalProperties,  Double , Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'op', source-detector separations 'rhos' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime(OpticalProperties,  Double ,  Double )
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'op', source-detector separations 'rhos' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime( OpticalProperties , Double, Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separation 'rho' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime( OpticalProperties , Double,  Double )
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separation 'rho' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime( OpticalProperties ,  Double , Double)
Overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separations 'rhos' and time 't'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime( OpticalProperties ,  Double ,  Double )
Convenience array overload of ROfRhoAndTime. Determines reflectances at optical properties 'ops', source-detector separations 'rhos' and times 'ts'
(Inherited from ForwardSolverBase.)
Public methodROfRhoAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double )
Returns the reflectance at radial distance rho and time t scaling the reference rho-time resolved reflectance. The returned value is forced to zero if the time t is smaller then the minimal time of flight required to reach a detector at a distance rho. If a point of the reference reflectance outside the time range of the surface is required, the value is extrapolated using the linear approximation of the logarithm of R for two points placed at the end of the time range [Tmax - 0.1ns, Tmax]. If the required point is outside the radial range a linear extarpolation is used, based on the value of R at [0.95*RhoMax, RhoMax]. If the required point is outside both ranges a linear combination of the two extrapolations is adopted.
(Overrides ForwardSolverBase ROfRhoAndTime(IEnumerable OpticalProperties , IEnumerable Double , IEnumerable Double ).)
Public methodROfRhoAndTime(OpticalProperties, Double, Double)
Calls its vectorized version to evaluate the time and space resolved reflectance at a source detector separation rho and at time t, for the specified optical properties.
(Overrides ForwardSolverBase ROfRhoAndTime(OpticalProperties, Double, Double).)
Public methodROfTheta(IEnumerable OpticalProperties , IEnumerable Double ) (Inherited from ForwardSolverBase.)
Public methodROfTheta(OpticalProperties, Double)
Scalar ROfTheta function. Determines reflectance at polar angle theta
(Inherited from ForwardSolverBase.)
Public methodROfTheta(OpticalProperties,  Double )
Overload of ROFTheta. Determines reflectances at optical properties 'ops' and polar angles 'thetas'
(Inherited from ForwardSolverBase.)
Public methodROfTheta( OpticalProperties , Double)
Overload of ROFTheta. Determines reflectances at optical properties 'ops' and polar angles 'thetas'
(Inherited from ForwardSolverBase.)
Public methodROfTheta( OpticalProperties ,  Double )
Convenience array overload of ROfTheta. Determines reflectances at optical properties 'ops' and polar angle 'thetas'
(Inherited from ForwardSolverBase.)
Public methodOnlineToString
Returns a string that represents the current object.
(Inherited from OnlineObject.)
Back to Top
Fields

  NameDescription
Public fieldStatic memberv
Back to Top
Properties

  NameDescription
Public propertyBeamDiameter
beam diameter
(Inherited from ForwardSolverBase.)
Public propertySourceConfiguration
source configuration - point, distributed or gaussian
(Inherited from ForwardSolverBase.)
Back to Top
Events

  NameDescription
Public eventPropertyChanged
Raised when a public property of this object is set.
(Inherited from BindableObject.)
Back to Top
See Also