Naphtali Sandholm Method Class
Implements the Naphtali–Sandholm Simultaneous Correction (SC) method for solving the
full set of MESH equations of distillation, absorption, and stripping columns.
All equations (material balance, equilibrium, summation, and enthalpy balance) are
solved simultaneously using a Newton–Raphson linearisation with Jacobian matrix evaluation.
Definition
Namespace: DWSIM.UnitOperations.UnitOperations.Auxiliary.SepOps.SolvingMethods
Assembly: DWSIM.UnitOperations (in DWSIM.UnitOperations.dll) Version: 10.0.0.0
Assembly: DWSIM.UnitOperations (in DWSIM.UnitOperations.dll) Version: 10.0.0.0
C#
[SerializableAttribute]
public class NaphtaliSandholmMethod : ColumnSolverVB
<SerializableAttribute>
Public Class NaphtaliSandholmMethod
Inherits ColumnSolver- Inheritance
- Object ColumnSolver NaphtaliSandholmMethod
Constructors
| NaphtaliSandholmMethod | Initializes a new default instance of the NaphtaliSandholmMethod class. |
Properties
| Description | Gets the solver description. (Overrides ColumnSolverDescription) |
| Name | Gets the solver display name. (Overrides ColumnSolverName) |
Methods
| CalcStageEnthalpy | Calculates enthalpies for a single stage, eliminating parallel/sequential code duplication. |
| CalcStageKvalues | Calculates K-values for a single stage, eliminating parallel/sequential code duplication. |
| FunctionGradient | Computes the Jacobian exploiting block-tridiagonal sparsity via graph coloring. Reduces function evaluations from 2*N to 6*(2*nc+1), independent of stage count. |
| FunctionValue | Evaluates the MESH (Material balance, Equilibrium, Summation, Heat balance) residual functions for all stages given the current variable vector. |
| SafeLog | Safe logarithm that handles non-positive arguments gracefully. |
| Solve | Solves the distillation/absorption column using the Naphtali–Sandholm Simultaneous Correction method. |
| SolveBlockTridiagonal | Solves a block-tridiagonal linear system J*dx = rhs using the Thomas algorithm for block matrices. O(nBlocks * blockSize^3) instead of O(n^3) for dense solve. |
| SolveColumn(ColumnSolverInputData) |
Solves the column from a ColumnSolverInputData object using the SC method.
(Overrides ColumnSolverSolveColumn(ColumnSolverInputData)) |
| SolveColumn(Column, ColumnSolverInputData) | (Inherited from ColumnSolver) |
| SolveNewtonCustom | Custom Newton solver with block-tridiagonal linear solve, backtracking line search, stagnation detection, variable clipping, and best-solution tracking. |
| ValidateInitialization | Validates initialization results from Wang-Henke to prevent corrupted initial estimates. |
Fields
| _bx | |
| _coltype | |
| _condtype | |
| _counter | |
| _dbx | |
| _eff | |
| _F | |
| _fc | |
| _HF | |
| _homotopyLambda | Homotopy parameter [0,1]. At 0 uses ideal (Raoult) K-values, at 1 uses full thermodynamic K-values. |
| _IObj | |
| _Kval | |
| _LSS | |
| _maxlc_j | |
| _maxT | |
| _maxtchange | |
| _maxvc_j | |
| _names | |
| _nc | |
| _ns | |
| _P | |
| _pp | |
| _Q | |
| _reporter | |
| _scalef | |
| _spci1 | |
| _spci2 | |
| _specs | |
| _spval1 | |
| _spval2 | |
| _subcoolingDeltaT | |
| _Tj_ant | |
| _VSS | |
| grad | |
| ih | |
| ik | |
| llextr |
Extension Methods
| GetEnumNames | (Defined by General) |
| IsValidDouble | (Defined by General) |