kawin.ShapeFactors

class kawin.ShapeFactor(self)

Defines functions for shape factors of needle, plate and cuboidal precipitates 
Shape factors involve the following: 
    Aspect Ratio - ratio of long axis to short axis 
    Eccentricity - characteristic value of the precipitate shape that depends on the aspect ratio 
    Equivalent radius factor - correction factor to the radius to give the radius of a sphere with equivalent volume 
    Kinetic factor - correction factor for the growth rate of the particle 
    Thermodynamic factor / Area factor - correction factor for the critical driving force/radius for nucleation 
     
    For a sphere (or needle and plate precipitates with aspect ratio of 1): 
        Eccentricity = 0 
        Equivalent radius factor = 1 
        Kinetic factor = 1 
        Thermodynamic factor = 1 
 
NOTE: 
normalRadaii, eqRadiusFactor, kineticFactor and thermoFactor  
    take in R and output the corresponding factors 
 
_normalRadaiiEquation, __eqRadiusEquation, _kineticEquation and _thermoEquation 
    take in aspect ratio and output the corresponding factors 

kawin.ShapeFactor.setAspectRatio(self, ar)

Sets aspect ratio as a function of R (equivalent spherical radius) 
 
Parameters 
---------- 
ar : float or function 
    Aspect ratio 
    If function, must take in radius and return aspect ratio 

kawin.ShapeFactor._scalarAspectRatioEquation(self, R)

Aspect ratio as a function of radius if the aspect ratio is set as a scalar 

kawin.ShapeFactor.setSpherical(self, ar = 1)

Sets factors for spherical precipitates 

kawin.ShapeFactor.setNeedleShape(self, ar = 1)

Factors for needle shaped precipitates 

kawin.ShapeFactor.setPlateShape(self, ar = 1)

Factors for plate shaped precipitates 

kawin.ShapeFactor.setCuboidalShape(self, ar = 1)

Factors for cuboidal shaped precipitates 

kawin.ShapeFactor.normalRadii(self, R)

Radius along the 3 axis to give a spherical volume of 1 
 
Parameters 
---------- 
R : float or array 
    Equivalent spherical radius 
 
Returns 
------- 
3 length array for each axis if R is scalar 
n x 3 array if R is an array 

kawin.ShapeFactor.eqRadiusFactor(self, R)

Equivalent spherical radius factor for generic precipitates 
 
Parameters 
---------- 
R : float or array 
    Equivalent spherical radius 
 
Returns 
------- 
Eq. radius factor with same shape as R 

kawin.ShapeFactor.kineticFactor(self, R)

Kinetic factor for generic precipitates 
 
Parameters 
---------- 
R : float or array 
    Equivalent spherical radius 
 
Returns 
------- 
Kinetic factor with same shape as R 

kawin.ShapeFactor.thermoFactor(self, R)

Thermodynamic factor for generic precipitates 
 
Parameters 
---------- 
R : float or array 
    Equivalent spherical radius 
 
Returns 
------- 
Thermodynamic factor with same shape as R 

kawin.ShapeFactor.eccentricity(self, ar)

Eccentricity given the aspect ratio (for needle and plate shaped precipitates) 

kawin.ShapeFactor._eqRadiusFactorSphere(self, ar)

Equivalent radius for a sphere (returns 1) 

kawin.ShapeFactor._eqRadiusFactorNeedle(self, ar)

Equivalent radius for needle shaped precipitate 

kawin.ShapeFactor._eqRadiusFactorPlate(self, ar)

Equivalent radius for plate shaped precipitate 

kawin.ShapeFactor._eqRadiusFactorCuboidal(self, ar)

Equivalent radius for cuboidal shaped precipitate 

kawin.ShapeFactor._normalRadiiSphere(self, ar)

Returns radius along the 3-axis for a volume of 1 

kawin.ShapeFactor._normalRadiiNeedle(self, ar)

Returns radius along the 3-axis for a volume of 1 

kawin.ShapeFactor._normalRadiiPlate(self, ar)

Returns radius along the 3-axis for a volume of 1 

kawin.ShapeFactor._normalRadiiCuboidal(self, ar)

Returns radius along the 3-axis for a volume of 1 

kawin.ShapeFactor._kineticFactorSphere(self, ar)

Kinetic factor for a sphere (returns 1) 

kawin.ShapeFactor._kineticFactorEquationNeedle(self, ar)

Kinetic factor for needle shaped precipitate 

kawin.ShapeFactor._kineticFactorEquationPlate(self, ar)

Kinetic factor for plate shaped precipitate 

kawin.ShapeFactor._kineticFactorEquationCuboidal(self, ar)

Kinetic factor for cuboidal shaped precipitate 

kawin.ShapeFactor._thermoFactorSphere(self, ar)

Thermodynamic factor for a sphere (returns 1) 

kawin.ShapeFactor._thermoFactorEquationNeedle(self, ar)

Thermodynamic factor for needle shaped precipitate 

kawin.ShapeFactor._thermoFactorEquationPlate(self, ar)

Thermodynamic factor for plate shaped precipitate 

kawin.ShapeFactor._thermoFactorEquationCuboidal(self, ar)

Thermodynamic factor for cuboidal shaped precipitate 

kawin.ShapeFactor._findRcritScalar(self, RcritSphere, Rmax)

Critical radius given a scalar aspect ratio 

kawin.ShapeFactor._findRcrit(self, RcritSphere, Rmax)

Critical radius given aspect ratio as a function of radius 
Found by bisection method