fdm_test_volume Program

Uses

  • program~~fdm_test_volume~~UsesGraph program~fdm_test_volume fdm_test_volume module~forcad forcad program~fdm_test_volume->module~forcad module~forcad_kinds forcad_kinds module~forcad->module~forcad_kinds module~forcad_nurbs_curve forcad_nurbs_curve module~forcad->module~forcad_nurbs_curve module~forcad_nurbs_surface forcad_nurbs_surface module~forcad->module~forcad_nurbs_surface module~forcad_nurbs_volume forcad_nurbs_volume module~forcad->module~forcad_nurbs_volume module~forcad_nurbs_curve->module~forcad_kinds fordebug fordebug module~forcad_nurbs_curve->fordebug module~forcad_utils forcad_utils module~forcad_nurbs_curve->module~forcad_utils module~forcad_nurbs_surface->module~forcad_kinds module~forcad_nurbs_surface->fordebug module~forcad_nurbs_surface->module~forcad_utils module~forcad_nurbs_volume->module~forcad_kinds module~forcad_nurbs_volume->fordebug module~forcad_nurbs_volume->module~forcad_utils module~forcad_utils->module~forcad_kinds

Generate the NURBS volume with a resolution of 20

Finalize the NURBS volume object Generate the NURBS volume with a resolution of 20

Finalize the NURBS volume object


Calls

program~~fdm_test_volume~~CallsGraph program~fdm_test_volume fdm_test_volume none~derivative2~2 nurbs_volume%derivative2 program~fdm_test_volume->none~derivative2~2 proc~create~2 nurbs_volume%create program~fdm_test_volume->proc~create~2 proc~finalize~2 nurbs_volume%finalize program~fdm_test_volume->proc~finalize~2 proc~set_hexahedron nurbs_volume%set_hexahedron program~fdm_test_volume->proc~set_hexahedron proc~derivative2_scalar~2 nurbs_volume%derivative2_scalar none~derivative2~2->proc~derivative2_scalar~2 proc~derivative2_vector~2 nurbs_volume%derivative2_vector none~derivative2~2->proc~derivative2_vector~2 interface~compute_xg~2 compute_Xg proc~create~2->interface~compute_xg~2 interface~ndgrid ndgrid proc~create~2->interface~ndgrid proc~is_rational~2 nurbs_volume%is_rational proc~create~2->proc~is_rational~2 set set proc~create~2->set none~set~2 nurbs_volume%set proc~set_hexahedron->none~set~2 proc~hexahedron_xc hexahedron_Xc proc~set_hexahedron->proc~hexahedron_xc proc~compute_xg_bspline_3d compute_Xg_bspline_3d interface~compute_xg~2->proc~compute_xg_bspline_3d proc~compute_xg_bspline_3d_1point compute_Xg_bspline_3d_1point interface~compute_xg~2->proc~compute_xg_bspline_3d_1point proc~compute_xg_nurbs_3d compute_Xg_nurbs_3d interface~compute_xg~2->proc~compute_xg_nurbs_3d proc~compute_xg_nurbs_3d_1point compute_Xg_nurbs_3d_1point interface~compute_xg~2->proc~compute_xg_nurbs_3d_1point proc~ndgrid2 ndgrid2 interface~ndgrid->proc~ndgrid2 proc~ndgrid3 ndgrid3 interface~ndgrid->proc~ndgrid3 proc~set1~2 nurbs_volume%set1 none~set~2->proc~set1~2 proc~set2~2 nurbs_volume%set2 none~set~2->proc~set2~2 proc~set3~2 nurbs_volume%set3 none~set~2->proc~set3~2 proc~set4~2 nurbs_volume%set4 none~set~2->proc~set4~2 proc~derivative2_scalar~2->proc~is_rational~2 interface~compute_d2tgc~2 compute_d2Tgc proc~derivative2_scalar~2->interface~compute_d2tgc~2 proc~derivative2_vector~2->interface~ndgrid proc~derivative2_vector~2->proc~is_rational~2 proc~derivative2_vector~2->interface~compute_d2tgc~2 proc~compute_d2tgc_bspline_3d_scalar compute_d2Tgc_bspline_3d_scalar interface~compute_d2tgc~2->proc~compute_d2tgc_bspline_3d_scalar proc~compute_d2tgc_bspline_3d_vector compute_d2Tgc_bspline_3d_vector interface~compute_d2tgc~2->proc~compute_d2tgc_bspline_3d_vector proc~compute_d2tgc_nurbs_3d_scalar compute_d2Tgc_nurbs_3d_scalar interface~compute_d2tgc~2->proc~compute_d2tgc_nurbs_3d_scalar proc~compute_d2tgc_nurbs_3d_vector compute_d2Tgc_nurbs_3d_vector interface~compute_d2tgc~2->proc~compute_d2tgc_nurbs_3d_vector interface~kron kron proc~compute_xg_bspline_3d->interface~kron proc~basis_bspline basis_bspline proc~compute_xg_bspline_3d->proc~basis_bspline proc~compute_xg_bspline_3d_1point->interface~kron proc~compute_xg_bspline_3d_1point->proc~basis_bspline proc~cmp_tgc_3d cmp_Tgc_3d proc~compute_xg_nurbs_3d->proc~cmp_tgc_3d proc~compute_xg_nurbs_3d_1point->interface~kron proc~compute_xg_nurbs_3d_1point->proc~basis_bspline proc~set1~2->set proc~cmp_degree~2 nurbs_volume%cmp_degree proc~set1~2->proc~cmp_degree~2 proc~cmp_nc~2 nurbs_volume%cmp_nc proc~set1~2->proc~cmp_nc~2 proc~set2~2->set proc~set2~2->proc~cmp_nc~2 proc~compute_knot_vector compute_knot_vector proc~set2~2->proc~compute_knot_vector proc~set3~2->set proc~set3~2->proc~cmp_degree~2 proc~set4~2->set proc~kron3 kron3 interface~kron->proc~kron3 proc~kron_t1_t1 kron_t1_t1 interface~kron->proc~kron_t1_t1 proc~kron_t1_t2 kron_t1_t2 interface~kron->proc~kron_t1_t2 proc~cmp_degree~2->set proc~get_multiplicity~2 nurbs_volume%get_multiplicity proc~cmp_degree~2->proc~get_multiplicity~2 proc~cmp_nc~2->set interface~compute_multiplicity compute_multiplicity proc~cmp_nc~2->interface~compute_multiplicity proc~cmp_tgc_3d->interface~kron proc~cmp_tgc_3d->proc~basis_bspline proc~compute_d2tgc_bspline_3d_scalar->interface~kron interface~basis_bspline_2der basis_bspline_2der proc~compute_d2tgc_bspline_3d_scalar->interface~basis_bspline_2der proc~compute_d2tgc_bspline_3d_vector->interface~kron proc~compute_d2tgc_bspline_3d_vector->interface~basis_bspline_2der proc~compute_d2tgc_nurbs_3d_scalar->interface~kron proc~compute_d2tgc_nurbs_3d_scalar->interface~basis_bspline_2der proc~compute_d2tgc_nurbs_3d_vector->interface~kron proc~compute_d2tgc_nurbs_3d_vector->interface~basis_bspline_2der proc~repelem repelem proc~compute_knot_vector->proc~repelem proc~basis_bspline_2der_a basis_bspline_2der_A interface~basis_bspline_2der->proc~basis_bspline_2der_a proc~basis_bspline_2der_b basis_bspline_2der_B interface~basis_bspline_2der->proc~basis_bspline_2der_b proc~basis_bspline_2der_c basis_bspline_2der_C interface~basis_bspline_2der->proc~basis_bspline_2der_c proc~compute_multiplicity1 compute_multiplicity1 interface~compute_multiplicity->proc~compute_multiplicity1 proc~compute_multiplicity2 compute_multiplicity2 interface~compute_multiplicity->proc~compute_multiplicity2 proc~get_multiplicity~2->interface~compute_multiplicity

Variables

Type Attributes Name Initial
real(kind=rk), allocatable :: BFD(:,:)
real(kind=rk), allocatable :: BFD2(:,:)
real(kind=rk), allocatable :: CFD(:,:)
real(kind=rk), allocatable :: CFD2(:,:)
real(kind=rk), allocatable :: FFD(:,:)
real(kind=rk), allocatable :: FFD2(:,:)
real(kind=rk), allocatable :: Tgc(:)
real(kind=rk), allocatable :: Tgcm(:)
real(kind=rk), allocatable :: Tgcp(:)
real(kind=rk), allocatable :: Wc(:)

Weights for the control points

real(kind=rk) :: Xt(3)
real(kind=rk) :: Xtm(3)
real(kind=rk) :: Xtp(3)
real(kind=rk), allocatable :: d2Tgc(:,:)
real(kind=rk), allocatable :: d2Tgcm(:,:)
real(kind=rk), allocatable :: d2Tgcp(:,:)
real(kind=rk), allocatable :: dTgc(:,:)
real(kind=rk), allocatable :: dTgcm(:,:)
real(kind=rk), allocatable :: dTgcp(:,:)
integer :: i
real(kind=rk) :: tol
type(nurbs_volume) :: volume

Declare a NURBS volume object