test_nurbs_volume Program

Uses

  • program~~test_nurbs_volume~~UsesGraph program~test_nurbs_volume test_nurbs_volume forunittest forunittest program~test_nurbs_volume->forunittest module~forcad forcad program~test_nurbs_volume->module~forcad module~forcad_utils forcad_utils program~test_nurbs_volume->module~forcad_utils 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_utils->module~forcad_kinds module~forcad_nurbs_curve->module~forcad_utils module~forcad_nurbs_curve->module~forcad_kinds fordebug fordebug module~forcad_nurbs_curve->fordebug module~forcad_nurbs_surface->module~forcad_utils module~forcad_nurbs_surface->module~forcad_kinds module~forcad_nurbs_surface->fordebug module~forcad_nurbs_volume->module~forcad_utils module~forcad_nurbs_volume->module~forcad_kinds module~forcad_nurbs_volume->fordebug

Calls

program~~test_nurbs_volume~~CallsGraph program~test_nurbs_volume test_nurbs_volume check check program~test_nurbs_volume->check interface~ndgrid ndgrid program~test_nurbs_volume->interface~ndgrid n n program~test_nurbs_volume->n none~basis nurbs_volume%basis program~test_nurbs_volume->none~basis none~derivative nurbs_volume%derivative program~test_nurbs_volume->none~derivative none~derivative2 nurbs_volume%derivative2 program~test_nurbs_volume->none~derivative2 none~get_degree nurbs_volume%get_degree program~test_nurbs_volume->none~get_degree none~get_knot nurbs_volume%get_knot program~test_nurbs_volume->none~get_knot none~get_nc nurbs_volume%get_nc program~test_nurbs_volume->none~get_nc none~get_wc nurbs_volume%get_Wc program~test_nurbs_volume->none~get_wc none~get_xc nurbs_volume%get_Xc program~test_nurbs_volume->none~get_xc none~get_xg nurbs_volume%get_Xg program~test_nurbs_volume->none~get_xg none~set nurbs_volume%set program~test_nurbs_volume->none~set proc~cmp_elem nurbs_volume%cmp_elem program~test_nurbs_volume->proc~cmp_elem proc~cmp_elem_xc_vis nurbs_volume%cmp_elem_Xc_vis program~test_nurbs_volume->proc~cmp_elem_xc_vis proc~cmp_elem_xg_vis nurbs_volume%cmp_elem_Xg_vis program~test_nurbs_volume->proc~cmp_elem_xg_vis proc~cmp_nc nurbs_volume%cmp_nc program~test_nurbs_volume->proc~cmp_nc proc~cmp_volume nurbs_volume%cmp_volume program~test_nurbs_volume->proc~cmp_volume proc~create nurbs_volume%create program~test_nurbs_volume->proc~create proc~elevate_degree nurbs_volume%elevate_degree program~test_nurbs_volume->proc~elevate_degree proc~export_xc nurbs_volume%export_Xc program~test_nurbs_volume->proc~export_xc proc~export_xg nurbs_volume%export_Xg program~test_nurbs_volume->proc~export_xg proc~export_xth nurbs_volume%export_Xth program~test_nurbs_volume->proc~export_xth proc~finalize nurbs_volume%finalize program~test_nurbs_volume->proc~finalize proc~get_continuity nurbs_volume%get_continuity program~test_nurbs_volume->proc~get_continuity proc~get_elem nurbs_volume%get_elem program~test_nurbs_volume->proc~get_elem proc~get_elem_xc_vis nurbs_volume%get_elem_Xc_vis program~test_nurbs_volume->proc~get_elem_xc_vis proc~get_elem_xg_vis nurbs_volume%get_elem_Xg_vis program~test_nurbs_volume->proc~get_elem_xg_vis proc~get_multiplicity nurbs_volume%get_multiplicity program~test_nurbs_volume->proc~get_multiplicity proc~get_xt nurbs_volume%get_Xt program~test_nurbs_volume->proc~get_xt proc~insert_knots nurbs_volume%insert_knots program~test_nurbs_volume->proc~insert_knots proc~lsq_fit_bspline nurbs_volume%lsq_fit_bspline program~test_nurbs_volume->proc~lsq_fit_bspline proc~modify_wc nurbs_volume%modify_Wc program~test_nurbs_volume->proc~modify_wc proc~modify_xc nurbs_volume%modify_Xc program~test_nurbs_volume->proc~modify_xc proc~nearest_point nurbs_volume%nearest_point program~test_nurbs_volume->proc~nearest_point proc~nearest_point2 nurbs_volume%nearest_point2 program~test_nurbs_volume->proc~nearest_point2 proc~remove_knots nurbs_volume%remove_knots program~test_nurbs_volume->proc~remove_knots proc~rotate_xc nurbs_volume%rotate_Xc program~test_nurbs_volume->proc~rotate_xc proc~rotate_xg nurbs_volume%rotate_Xg program~test_nurbs_volume->proc~rotate_xg proc~set_c nurbs_volume%set_C program~test_nurbs_volume->proc~set_c proc~set_elem nurbs_volume%set_elem program~test_nurbs_volume->proc~set_elem proc~set_elem_xc_vis nurbs_volume%set_elem_Xc_vis program~test_nurbs_volume->proc~set_elem_xc_vis proc~set_elem_xg_vis nurbs_volume%set_elem_Xg_vis program~test_nurbs_volume->proc~set_elem_xg_vis proc~set_half_ring nurbs_volume%set_half_ring program~test_nurbs_volume->proc~set_half_ring proc~set_hexahedron nurbs_volume%set_hexahedron program~test_nurbs_volume->proc~set_hexahedron proc~set_ring nurbs_volume%set_ring program~test_nurbs_volume->proc~set_ring proc~translate_xc nurbs_volume%translate_Xc program~test_nurbs_volume->proc~translate_xc proc~translate_xg nurbs_volume%translate_Xg program~test_nurbs_volume->proc~translate_xg xdata xdata program~test_nurbs_volume->xdata xg_eval xg_eval program~test_nurbs_volume->xg_eval xt xt program~test_nurbs_volume->xt xt1 xt1 program~test_nurbs_volume->xt1 xt2 xt2 program~test_nurbs_volume->xt2 xt3 xt3 program~test_nurbs_volume->xt3 proc~ndgrid2 ndgrid2 interface~ndgrid->proc~ndgrid2 proc~ndgrid3 ndgrid3 interface~ndgrid->proc~ndgrid3 proc~basis_scalar nurbs_volume%basis_scalar none~basis->proc~basis_scalar proc~basis_vector nurbs_volume%basis_vector none~basis->proc~basis_vector proc~derivative_scalar nurbs_volume%derivative_scalar none~derivative->proc~derivative_scalar proc~derivative_vector nurbs_volume%derivative_vector none~derivative->proc~derivative_vector proc~derivative2_scalar nurbs_volume%derivative2_scalar none~derivative2->proc~derivative2_scalar proc~derivative2_vector nurbs_volume%derivative2_vector none~derivative2->proc~derivative2_vector proc~get_degree_all nurbs_volume%get_degree_all none~get_degree->proc~get_degree_all proc~get_degree_dir nurbs_volume%get_degree_dir none~get_degree->proc~get_degree_dir proc~get_knot_all nurbs_volume%get_knot_all none~get_knot->proc~get_knot_all proc~get_knoti nurbs_volume%get_knoti none~get_knot->proc~get_knoti proc~get_nc_all nurbs_volume%get_nc_all none~get_nc->proc~get_nc_all proc~get_nc_dir nurbs_volume%get_nc_dir none~get_nc->proc~get_nc_dir proc~get_wc_all nurbs_volume%get_Wc_all none~get_wc->proc~get_wc_all proc~get_wci nurbs_volume%get_Wci none~get_wc->proc~get_wci proc~get_xc_all nurbs_volume%get_Xc_all none~get_xc->proc~get_xc_all proc~get_xci nurbs_volume%get_Xci none~get_xc->proc~get_xci proc~get_xcid nurbs_volume%get_Xcid none~get_xc->proc~get_xcid proc~get_xg_all nurbs_volume%get_Xg_all none~get_xg->proc~get_xg_all proc~get_xgi nurbs_volume%get_Xgi none~get_xg->proc~get_xgi proc~get_xgid nurbs_volume%get_Xgid none~get_xg->proc~get_xgid proc~set1 nurbs_volume%set1 none~set->proc~set1 proc~set2 nurbs_volume%set2 none~set->proc~set2 proc~set3 nurbs_volume%set3 none~set->proc~set3 proc~set4 nurbs_volume%set4 none~set->proc~set4 proc~cmp_elem->proc~get_multiplicity interface~elemconn_cn elemConn_Cn proc~cmp_elem->interface~elemconn_cn interface~unique unique proc~cmp_elem->interface~unique interface~elemconn_c0 elemConn_C0 proc~cmp_elem_xc_vis->interface~elemconn_c0 proc~cmp_elem_xg_vis->interface~elemconn_c0 interface~compute_multiplicity compute_multiplicity proc~cmp_nc->interface~compute_multiplicity set set proc~cmp_nc->set proc~cmp_volume->proc~cmp_elem proc~ansatz nurbs_volume%ansatz proc~cmp_volume->proc~ansatz reduce reduce proc~cmp_volume->reduce proc~create->interface~ndgrid interface~compute_xg compute_Xg proc~create->interface~compute_xg proc~is_rational nurbs_volume%is_rational proc~create->proc~is_rational proc~create->set proc~elevate_degree->none~get_knot proc~elevate_degree->none~set proc~elevate_degree_a_5_9 elevate_degree_A_5_9 proc~elevate_degree->proc~elevate_degree_a_5_9 proc~elevate_degree->proc~is_rational proc~export_xc->proc~cmp_elem_xc_vis proc~export_vtk_legacy export_vtk_legacy proc~export_xc->proc~export_vtk_legacy proc~export_xc->set proc~export_xg->proc~cmp_elem_xg_vis proc~export_xg->proc~export_vtk_legacy proc~export_xg->set proc~export_xth->interface~ndgrid proc~export_xth->interface~unique proc~cmp_elem_xth nurbs_volume%cmp_elem_Xth proc~export_xth->proc~cmp_elem_xth proc~export_xth->proc~export_vtk_legacy proc~get_continuity->interface~compute_multiplicity proc~get_multiplicity->interface~compute_multiplicity proc~insert_knots->none~get_knot proc~insert_knots->interface~compute_multiplicity proc~findspan findspan proc~insert_knots->proc~findspan proc~insert_knot_a_5_1 insert_knot_A_5_1 proc~insert_knots->proc~insert_knot_a_5_1 proc~insert_knots->proc~is_rational s_loc s_loc proc~insert_knots->s_loc proc~insert_knots->set interface~kron kron proc~lsq_fit_bspline->interface~kron proc~basis_bspline basis_bspline proc~lsq_fit_bspline->proc~basis_bspline proc~solve solve proc~lsq_fit_bspline->proc~solve proc~lsq_fit_bspline->set proc~modify_wc->none~get_knot proc~modify_wc->none~get_wc proc~modify_wc->none~get_xc proc~modify_wc->none~set proc~modify_xc->none~get_knot proc~modify_xc->none~get_wc proc~modify_xc->none~get_xc proc~modify_xc->none~set proc~nearest_point2->none~derivative2 proc~nearest_point2->proc~create proc~nearest_point2->proc~finalize proc~nearest_point2->proc~nearest_point proc~cmp_xg nurbs_volume%cmp_Xg proc~nearest_point2->proc~cmp_xg proc~inv inv proc~nearest_point2->proc~inv proc~remove_knots->none~get_knot proc~remove_knots->none~set proc~remove_knots->interface~compute_multiplicity proc~remove_knots->proc~findspan proc~remove_knots_a_5_8 remove_knots_A_5_8 proc~remove_knots->proc~remove_knots_a_5_8 proc~rotation rotation proc~rotate_xc->proc~rotation proc~rotate_xg->proc~rotation proc~set_c->none~set proc~set_half_ring->none~set proc~set_hexahedron->none~set proc~hexahedron_xc hexahedron_Xc proc~set_hexahedron->proc~hexahedron_xc proc~set_ring->none~set proc~compute_multiplicity1 compute_multiplicity1 interface~compute_multiplicity->proc~compute_multiplicity1 proc~compute_multiplicity2 compute_multiplicity2 interface~compute_multiplicity->proc~compute_multiplicity2 proc~compute_xg_bspline_3d compute_Xg_bspline_3d interface~compute_xg->proc~compute_xg_bspline_3d proc~compute_xg_bspline_3d_1point compute_Xg_bspline_3d_1point interface~compute_xg->proc~compute_xg_bspline_3d_1point proc~compute_xg_nurbs_3d compute_Xg_nurbs_3d interface~compute_xg->proc~compute_xg_nurbs_3d proc~compute_xg_nurbs_3d_1point compute_Xg_nurbs_3d_1point interface~compute_xg->proc~compute_xg_nurbs_3d_1point proc~cmp_elemconn_c0_l cmp_elemConn_C0_L interface~elemconn_c0->proc~cmp_elemconn_c0_l proc~cmp_elemconn_c0_s cmp_elemConn_C0_S interface~elemconn_c0->proc~cmp_elemconn_c0_s proc~cmp_elemconn_c0_v cmp_elemConn_C0_V interface~elemconn_c0->proc~cmp_elemconn_c0_v proc~cmp_elemconn_cn_l cmp_elemConn_Cn_L interface~elemconn_cn->proc~cmp_elemconn_cn_l proc~cmp_elemconn_cn_s cmp_elemConn_Cn_S interface~elemconn_cn->proc~cmp_elemconn_cn_s proc~cmp_elemconn_cn_v cmp_elemConn_Cn_V interface~elemconn_cn->proc~cmp_elemconn_cn_v 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~unique_integer unique_integer interface~unique->proc~unique_integer proc~unique_real unique_real interface~unique->proc~unique_real proc~ansatz->interface~ndgrid proc~ansatz->none~derivative proc~ansatz->none~set proc~ansatz->proc~cmp_elem proc~ansatz->interface~unique proc~ansatz->proc~inv interface~gauss_leg gauss_leg proc~ansatz->interface~gauss_leg proc~det det proc~ansatz->proc~det proc~basis_scalar->proc~is_rational interface~compute_tgc compute_Tgc proc~basis_scalar->interface~compute_tgc proc~basis_vector->interface~ndgrid proc~basis_vector->proc~is_rational proc~basis_vector->interface~compute_tgc proc~cmp_elem_xth->interface~elemconn_c0 proc~cmp_elem_xth->interface~unique proc~cmp_xg->interface~compute_xg proc~cmp_xg->proc~is_rational proc~derivative2_scalar->proc~is_rational interface~compute_d2tgc compute_d2Tgc proc~derivative2_scalar->interface~compute_d2tgc proc~derivative2_vector->interface~ndgrid proc~derivative2_vector->proc~is_rational proc~derivative2_vector->interface~compute_d2tgc proc~derivative_scalar->proc~is_rational interface~compute_dtgc compute_dTgc proc~derivative_scalar->interface~compute_dtgc proc~derivative_vector->interface~ndgrid proc~derivative_vector->proc~is_rational proc~derivative_vector->interface~compute_dtgc proc~elevate_degree_a_5_9->interface~compute_multiplicity proc~bincoeff bincoeff proc~elevate_degree_a_5_9->proc~bincoeff proc~get_nc_dir->interface~compute_multiplicity local local proc~hexahedron_xc->local proc~inv->proc~inv proc~inv->proc~solve proc~inv->proc~det proc~eye eye proc~inv->proc~eye proc~ndgrid2->local proc~ndgrid3->local cosd cosd proc~rotation->cosd sind sind proc~rotation->sind proc~set1->proc~cmp_nc proc~set1->set proc~cmp_degree nurbs_volume%cmp_degree proc~set1->proc~cmp_degree proc~set2->proc~cmp_nc proc~set2->set proc~compute_knot_vector compute_knot_vector proc~set2->proc~compute_knot_vector proc~set3->set proc~set3->proc~cmp_degree proc~set4->set proc~compute_d2tgc_bspline_3d_scalar compute_d2Tgc_bspline_3d_scalar interface~compute_d2tgc->proc~compute_d2tgc_bspline_3d_scalar proc~compute_d2tgc_bspline_3d_vector compute_d2Tgc_bspline_3d_vector interface~compute_d2tgc->proc~compute_d2tgc_bspline_3d_vector proc~compute_d2tgc_nurbs_3d_scalar compute_d2Tgc_nurbs_3d_scalar interface~compute_d2tgc->proc~compute_d2tgc_nurbs_3d_scalar proc~compute_d2tgc_nurbs_3d_vector compute_d2Tgc_nurbs_3d_vector interface~compute_d2tgc->proc~compute_d2tgc_nurbs_3d_vector proc~compute_dtgc_bspline_3d_scalar compute_dTgc_bspline_3d_scalar interface~compute_dtgc->proc~compute_dtgc_bspline_3d_scalar proc~compute_dtgc_bspline_3d_vector compute_dTgc_bspline_3d_vector interface~compute_dtgc->proc~compute_dtgc_bspline_3d_vector proc~compute_dtgc_nurbs_3d_scalar compute_dTgc_nurbs_3d_scalar interface~compute_dtgc->proc~compute_dtgc_nurbs_3d_scalar proc~compute_dtgc_nurbs_3d_vector compute_dTgc_nurbs_3d_vector interface~compute_dtgc->proc~compute_dtgc_nurbs_3d_vector proc~compute_tgc_bspline_3d_scalar compute_Tgc_bspline_3d_scalar interface~compute_tgc->proc~compute_tgc_bspline_3d_scalar proc~compute_tgc_bspline_3d_vector compute_Tgc_bspline_3d_vector interface~compute_tgc->proc~compute_tgc_bspline_3d_vector proc~compute_tgc_nurbs_3d_scalar compute_Tgc_nurbs_3d_scalar interface~compute_tgc->proc~compute_tgc_nurbs_3d_scalar proc~compute_tgc_nurbs_3d_vector compute_Tgc_nurbs_3d_vector interface~compute_tgc->proc~compute_tgc_nurbs_3d_vector proc~gauss_legendre_1d gauss_legendre_1D interface~gauss_leg->proc~gauss_legendre_1d proc~gauss_legendre_2d gauss_legendre_2D interface~gauss_leg->proc~gauss_legendre_2d proc~gauss_legendre_3d gauss_legendre_3D interface~gauss_leg->proc~gauss_legendre_3d proc~factln factln proc~bincoeff->proc~factln proc~cmp_degree->proc~get_multiplicity proc~cmp_degree->set proc~repelem repelem proc~compute_knot_vector->proc~repelem proc~compute_xg_bspline_3d->interface~kron 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~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~compute_dtgc_bspline_3d_scalar->interface~kron interface~basis_bspline_der basis_bspline_der proc~compute_dtgc_bspline_3d_scalar->interface~basis_bspline_der proc~compute_dtgc_bspline_3d_vector->interface~kron proc~compute_dtgc_bspline_3d_vector->interface~basis_bspline_der proc~compute_dtgc_nurbs_3d_scalar->interface~kron proc~compute_dtgc_nurbs_3d_scalar->interface~basis_bspline_der proc~compute_dtgc_nurbs_3d_vector->interface~kron proc~compute_dtgc_nurbs_3d_vector->interface~basis_bspline_der proc~compute_tgc_bspline_3d_scalar->interface~kron proc~compute_tgc_bspline_3d_scalar->proc~basis_bspline proc~compute_tgc_bspline_3d_vector->interface~kron proc~compute_tgc_bspline_3d_vector->proc~basis_bspline proc~compute_tgc_nurbs_3d_scalar->interface~kron proc~compute_tgc_nurbs_3d_scalar->proc~basis_bspline proc~compute_tgc_nurbs_3d_vector->interface~kron proc~compute_tgc_nurbs_3d_vector->proc~basis_bspline proc~gauss_legendre gauss_legendre proc~gauss_legendre_1d->proc~gauss_legendre proc~gauss_legendre_2d->interface~ndgrid proc~gauss_legendre_2d->interface~kron proc~gauss_legendre_2d->proc~gauss_legendre proc~gauss_legendre_3d->interface~ndgrid proc~gauss_legendre_3d->interface~kron proc~gauss_legendre_3d->proc~gauss_legendre 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~basis_bspline_der_a basis_bspline_der_A interface~basis_bspline_der->proc~basis_bspline_der_a proc~basis_bspline_der_b basis_bspline_der_B interface~basis_bspline_der->proc~basis_bspline_der_b

Variables

Type Attributes Name Initial
real(kind=rk), allocatable :: Tgc(:,:)
real(kind=rk), allocatable :: Tgc1(:)
real(kind=rk), allocatable :: Tgc1b(:)
real(kind=rk), allocatable :: Tgcb(:,:)
real(kind=rk), allocatable :: Wc(:)
real(kind=rk), allocatable :: Xc(:,:)
real(kind=rk), allocatable :: Xg(:,:)
real(kind=rk), allocatable :: Xgb(:,:)
type(nurbs_volume) :: bsp
real(kind=rk), allocatable :: d2Tgc(:,:,:)
real(kind=rk), allocatable :: d2Tgc1(:,:)
real(kind=rk), allocatable :: d2Tgc1b(:,:)
real(kind=rk), allocatable :: d2Tgcb(:,:,:)
real(kind=rk), allocatable :: dTgc(:,:,:)
real(kind=rk), allocatable :: dTgc1(:,:)
real(kind=rk), allocatable :: dTgc1b(:,:)
real(kind=rk), allocatable :: dTgcb(:,:,:)
integer, allocatable :: elemConn(:,:)
integer :: i
integer :: id
real(kind=rk) :: knot1(4)
real(kind=rk) :: knot2(4)
real(kind=rk) :: knot3(4)
real(kind=rk) :: nearest_Xg(3)
real(kind=rk) :: nearest_Xt(3)
type(nurbs_volume) :: nurbs
type(unit_test) :: ut
real(kind=rk) :: volume
real(kind=rk) :: volumeb