This function returns the result of the 1D newton root search for the pest theta angle
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | theta_star | |||
| real(kind=wp), | intent(in) | :: | zeta | |||
| type(t_fBase), | intent(in), | TARGET | :: | LA_fbase_in | ||
| real(kind=wp), | intent(in), | TARGET | :: | LA_in(1:LA_fbase_in%modes) |
FUNCTION get_pest_newton(theta_star,zeta,LA_fbase_in,LA_in) RESULT(thet_out) USE MODgvec_fbase ,ONLY: t_fbase USE MODgvec_Newton ,ONLY: NewtonRoot1D_FdF USE MODgvec_Globals,ONLY: PI IMPLICIT NONE !----------------------------------------------------------------------------------------------------------------------------------- ! INPUT VARIABLES REAL(wp) ,INTENT(IN) :: theta_star !< initial guess = thet* REAL(wp) ,INTENT(IN) :: zeta TYPE(t_fbase),INTENT(IN), TARGET ::LA_fbase_in !< basis of lambda REAL(wp) ,INTENT(IN), TARGET :: LA_in(1:LA_fbase_in%modes) !< fourier coefficients of thet*=thet+LA(theta,zeta) !----------------------------------------------------------------------------------------------------------------------------------- ! OUTPUT VARIABLES REAL(wp) :: thet_out !< theta position in original coordinates !----------------------------------------------------------------------------------------------------------------------------------- ! LOCAL VARIABLES TYPE(t_newton_Root1D_FdF_pest) :: fobj !=================================================================================================================================== fobj%zeta = zeta fobj%LA_fbase_in => LA_fbase_in fobj%LA_in => LA_in thet_out = NewtonRoot1D_FdF(1.0e-12_wp,theta_star-PI,theta_star+PI,0.1_wp*PI, & theta_star, theta_star,fobj) !start, rhs,func END FUNCTION get_pest_newton