280 FUNCTION vexact(m, H_mesh) RESULT(vv) !Set uniquement a l'induction
283 INTEGER,
INTENT(IN) :: m
284 REAL(KIND=8),
DIMENSION(H_mesh%np,6) :: vv
309 FUNCTION hexact(H_mesh,TYPE, rr, m, mu_H_field, t) RESULT(vv)
312 INTEGER ,
INTENT(IN) :: TYPE
313 REAL(KIND=8),
DIMENSION(:,:),
INTENT(IN) :: rr
314 INTEGER ,
INTENT(IN) :: m
315 REAL(KIND=8),
INTENT(IN) :: t
316 REAL(KIND=8),
DIMENSION(:),
INTENT(IN) :: mu_H_field
317 REAL(KIND=8),
DIMENSION(SIZE(rr,2)) :: vv
327 vv = cosh(rr(2,:))*(1+vv)
329 vv(n) = -
bessj1(rr(1,n))*vv(n)
331 ELSE IF (type==5)
THEN 332 vv = sinh(rr(2,:))*(1+vv)
334 vv(n) =
bessj0(rr(1,n))*vv(n)
342 n=h_mesh%np; r=mu_h_field(1); r=t
347 FUNCTION phiexact(TYPE, rr, m, mu_phi,t) RESULT(vv)
349 INTEGER ,
INTENT(IN) :: TYPE
350 REAL(KIND=8),
DIMENSION(:,:),
INTENT(IN) :: rr
351 INTEGER ,
INTENT(IN) :: m
352 REAL(KIND=8),
INTENT(IN) :: mu_phi, t
353 REAL(KIND=8),
DIMENSION(SIZE(rr,2)) :: vv
354 REAL(KIND=8),
DIMENSION(SIZE(rr,2)) :: r, z
365 vv(n) =
bessj0(r(n))*cosh(z(n))
378 FUNCTION jexact_gauss(TYPE, rr, m, mu_phi, sigma, mu_H, t, mesh_id, opt_B_ext) RESULT(vv)
380 INTEGER ,
INTENT(IN) :: TYPE
381 REAL(KIND=8),
DIMENSION(:),
INTENT(IN) :: rr
382 INTEGER ,
INTENT(IN) :: m
383 REAL(KIND=8),
INTENT(IN) :: mu_phi, sigma, mu_H, t
384 INTEGER ,
INTENT(IN) :: mesh_id
385 REAL(KIND=8),
DIMENSION(6),
OPTIONAL,
INTENT(IN) :: opt_B_ext
406 r=mu_phi; r=sigma; r=mu_h; r=t; n=mesh_id
407 IF (
PRESENT(opt_b_ext)) r=opt_b_ext(1)
412 FUNCTION eexact_gauss(TYPE, rr, m, mu_phi, sigma, mu_H, t) RESULT(vv)
414 INTEGER,
INTENT(IN) :: TYPE
415 REAL(KIND=8),
DIMENSION(:),
INTENT(IN) :: rr
416 INTEGER,
INTENT(IN) :: m
417 REAL(KIND=8),
INTENT(IN) :: mu_phi, sigma, mu_H, t
426 r=rr(1); r=mu_phi; r=sigma; r=mu_h; r=t; n=type; n=m
431 SUBROUTINE init_maxwell(H_mesh, phi_mesh, time, dt, mu_H_field, mu_phi, &
432 list_mode, hn1, hn, phin1, phin)
435 REAL(KIND=8),
INTENT(OUT):: time
436 REAL(KIND=8),
INTENT(IN) :: dt
437 REAL(KIND=8),
DIMENSION(:),
INTENT(IN) :: mu_H_field
438 REAL(KIND=8),
INTENT(IN) :: mu_phi
439 INTEGER,
DIMENSION(:),
INTENT(IN) :: list_mode
440 REAL(KIND=8),
DIMENSION(:,:,:),
INTENT(OUT):: Hn, Hn1
441 REAL(KIND=8),
DIMENSION(:,:,:),
INTENT(OUT):: phin, phin1
446 DO i=1,
SIZE(list_mode)
447 hn1(:,k,i) =
hexact(h_mesh,k, h_mesh%rr, list_mode(i), mu_h_field, time)
448 IF (
inputs%nb_dom_phi>0)
THEN 450 phin1(:,k,i) =
phiexact(k, phi_mesh%rr, list_mode(i) , mu_phi, time)
458 DO i=1,
SIZE(list_mode)
459 hn(:,k,i) =
hexact(h_mesh,k, h_mesh%rr, list_mode(i), mu_h_field, time)
460 IF (
inputs%nb_dom_phi>0)
THEN 462 phin(:,k,i) =
phiexact(k, phi_mesh%rr, list_mode(i), mu_phi, time)
476 REAL(KIND=8),
DIMENSION(ne-nb+1) :: vv
477 INTEGER,
INTENT(IN) :: nb, ne
478 REAL(KIND=8),
DIMENSION(2,ne-nb+1),
OPTIONAL :: pts
479 INTEGER,
DIMENSION(ne-nb+1),
OPTIONAL :: pts_ids
481 IF(
PRESENT(pts) .AND.
PRESENT(pts_ids) )
THEN 495 REAL(KIND=8),
DIMENSION(2),
INTENT(IN):: pt
496 INTEGER,
DIMENSION(1),
INTENT(IN) :: pt_id
497 REAL(KIND=8),
DIMENSION(2) :: vv
real(kind=8) function, dimension(ne-nb+1), public mu_bar_in_fourier_space(H_mesh, nb, ne, pts, pts_ids)
real(kind=8) function, dimension(size(rr, 2)), public hexact(H_mesh, TYPE, rr, m, mu_H_field, t)
real(kind=8) function, public jexact_gauss(TYPE, rr, m, mu_phi, sigma, mu_H, t, mesh_id, opt_B_ext)
real(kind=8) function, dimension(h_mesh%np, 6), public vexact(m, H_mesh)
real(kind=8) function, public bessj0(x)
real(kind=8) function, dimension(2), public grad_mu_bar_in_fourier_space(pt, pt_id)
real(kind=8) function dfdz_test_t17(r, z)
real(kind=8) function, dimension(2) grad_mu_bar_in_fourier_space_anal_t17(pt, pt_id)
real(kind=8) function, dimension(size(r)) f_test_t17(r, z)
real(kind=8) function, dimension(size(rr, 2)), public phiexact(TYPE, rr, m, mu_phi, t)
real(kind=8) function, public bessj1(x)
subroutine, public init_maxwell(H_mesh, phi_mesh, time, dt, mu_H_field, mu_phi, list_mode, Hn1, Hn, phin1, phin)
real(kind=8) function, public eexact_gauss(TYPE, rr, m, mu_phi, sigma, mu_H, t)
real(kind=8) function dfdr_test_t17(r, z)
real(kind=8) function, dimension(ne-nb+1) mu_bar_in_fourier_space_anal_t17(H_mesh, nb, ne, pts, pts_ids)