There are four ways to compute partial derivatives determined by "partialDersInputChoice", an input the setState_phX and setState_pTX functions:

1: none (default)

2: partial derivatives of d wrt p,h,X
In two-phase region: numerical differentiation for all derivatives
In single phase region: dddX is numerical and others are analytical

3: partial derivatives of d wrt p,h,X
In two-phase region: pseudo analytical (similar procedure as pure fluid - they give almost same result as method 2, and with less CPU effort).
In single phase region: dddX is numerical and others are analytical

4: partial derivatives of d and h wrt p,T,X
In two-phase region: numerical differentiation for all derivatives
In single phase region: dddX is numerical and others are analytical

The second and fourth methods compare exactly with stepping forward in u,d,X (the baseline with most CPU effort, due to tedious iteration in property functions at every time step, u,d,X -> T,p,h etc.).
Method 4 is guicker in the two-phase region compared to method 2, because T and P are equilibrium quantities, and thus the most typical flash function..
Method 3 is fastest, but does not give correct dynamics and will cause mass convervation to fail.

Note that the dddX derivative is the difference in dddX1|X2=const-dddX2|X1=const

The partials have only been tested for binary mixtures..