kron3 Function

private pure function kron3(u, v, w) result(out)

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in), contiguous :: u(:)
real(kind=rk), intent(in), contiguous :: v(:)
real(kind=rk), intent(in), contiguous :: w(:)

Return Value real(kind=rk), (size(u)*size(v)*size(w))


Called by

proc~~kron3~~CalledByGraph proc~kron3 kron3 interface~kron kron interface~kron->proc~kron3 proc~cmp_tgc_2d cmp_Tgc_2d proc~cmp_tgc_2d->interface~kron proc~cmp_tgc_3d cmp_Tgc_3d proc~cmp_tgc_3d->interface~kron proc~compute_d2tgc_bspline_2d_scalar compute_d2Tgc_bspline_2d_scalar proc~compute_d2tgc_bspline_2d_scalar->interface~kron proc~compute_d2tgc_bspline_2d_vector compute_d2Tgc_bspline_2d_vector proc~compute_d2tgc_bspline_2d_vector->interface~kron proc~compute_d2tgc_bspline_3d_scalar compute_d2Tgc_bspline_3d_scalar proc~compute_d2tgc_bspline_3d_scalar->interface~kron proc~compute_d2tgc_bspline_3d_vector compute_d2Tgc_bspline_3d_vector proc~compute_d2tgc_bspline_3d_vector->interface~kron proc~compute_d2tgc_nurbs_2d_scalar compute_d2Tgc_nurbs_2d_scalar proc~compute_d2tgc_nurbs_2d_scalar->interface~kron proc~compute_d2tgc_nurbs_2d_vector compute_d2Tgc_nurbs_2d_vector proc~compute_d2tgc_nurbs_2d_vector->interface~kron proc~compute_d2tgc_nurbs_3d_scalar compute_d2Tgc_nurbs_3d_scalar proc~compute_d2tgc_nurbs_3d_scalar->interface~kron proc~compute_d2tgc_nurbs_3d_vector compute_d2Tgc_nurbs_3d_vector proc~compute_d2tgc_nurbs_3d_vector->interface~kron proc~compute_dtgc_bspline_2d_scalar compute_dTgc_bspline_2d_scalar proc~compute_dtgc_bspline_2d_scalar->interface~kron proc~compute_dtgc_bspline_2d_vector compute_dTgc_bspline_2d_vector proc~compute_dtgc_bspline_2d_vector->interface~kron proc~compute_dtgc_bspline_3d_scalar compute_dTgc_bspline_3d_scalar proc~compute_dtgc_bspline_3d_scalar->interface~kron proc~compute_dtgc_bspline_3d_vector compute_dTgc_bspline_3d_vector proc~compute_dtgc_bspline_3d_vector->interface~kron proc~compute_dtgc_nurbs_2d_scalar compute_dTgc_nurbs_2d_scalar proc~compute_dtgc_nurbs_2d_scalar->interface~kron proc~compute_dtgc_nurbs_2d_vector compute_dTgc_nurbs_2d_vector proc~compute_dtgc_nurbs_2d_vector->interface~kron proc~compute_dtgc_nurbs_3d_scalar compute_dTgc_nurbs_3d_scalar proc~compute_dtgc_nurbs_3d_scalar->interface~kron proc~compute_dtgc_nurbs_3d_vector compute_dTgc_nurbs_3d_vector proc~compute_dtgc_nurbs_3d_vector->interface~kron proc~compute_tgc_bspline_2d_scalar compute_Tgc_bspline_2d_scalar proc~compute_tgc_bspline_2d_scalar->interface~kron proc~compute_tgc_bspline_2d_vector compute_Tgc_bspline_2d_vector proc~compute_tgc_bspline_2d_vector->interface~kron proc~compute_tgc_bspline_3d_scalar compute_Tgc_bspline_3d_scalar proc~compute_tgc_bspline_3d_scalar->interface~kron proc~compute_tgc_bspline_3d_vector compute_Tgc_bspline_3d_vector proc~compute_tgc_bspline_3d_vector->interface~kron proc~compute_tgc_nurbs_2d_scalar compute_Tgc_nurbs_2d_scalar proc~compute_tgc_nurbs_2d_scalar->interface~kron proc~compute_tgc_nurbs_2d_vector compute_Tgc_nurbs_2d_vector proc~compute_tgc_nurbs_2d_vector->interface~kron proc~compute_tgc_nurbs_3d_scalar compute_Tgc_nurbs_3d_scalar proc~compute_tgc_nurbs_3d_scalar->interface~kron proc~compute_tgc_nurbs_3d_vector compute_Tgc_nurbs_3d_vector proc~compute_tgc_nurbs_3d_vector->interface~kron proc~compute_xg_bspline_2d compute_Xg_bspline_2d proc~compute_xg_bspline_2d->interface~kron proc~compute_xg_bspline_2d_1point compute_Xg_bspline_2d_1point proc~compute_xg_bspline_2d_1point->interface~kron proc~compute_xg_bspline_3d compute_Xg_bspline_3d proc~compute_xg_bspline_3d->interface~kron proc~compute_xg_bspline_3d_1point compute_Xg_bspline_3d_1point proc~compute_xg_bspline_3d_1point->interface~kron proc~compute_xg_nurbs_2d_1point compute_Xg_nurbs_2d_1point proc~compute_xg_nurbs_2d_1point->interface~kron proc~compute_xg_nurbs_3d_1point compute_Xg_nurbs_3d_1point proc~compute_xg_nurbs_3d_1point->interface~kron proc~gauss_legendre_2d gauss_legendre_2D proc~gauss_legendre_2d->interface~kron proc~gauss_legendre_3d gauss_legendre_3D proc~gauss_legendre_3d->interface~kron proc~lsq_fit_bspline nurbs_surface%lsq_fit_bspline proc~lsq_fit_bspline->interface~kron proc~lsq_fit_bspline~2 nurbs_volume%lsq_fit_bspline proc~lsq_fit_bspline~2->interface~kron program~test_forcad_utils test_forcad_utils program~test_forcad_utils->interface~kron interface~gauss_leg gauss_leg program~test_forcad_utils->interface~gauss_leg interface~compute_d2tgc compute_d2Tgc interface~compute_d2tgc->proc~compute_d2tgc_bspline_2d_scalar interface~compute_d2tgc->proc~compute_d2tgc_bspline_2d_vector interface~compute_d2tgc->proc~compute_d2tgc_nurbs_2d_scalar interface~compute_d2tgc->proc~compute_d2tgc_nurbs_2d_vector interface~compute_d2tgc~2 compute_d2Tgc interface~compute_d2tgc~2->proc~compute_d2tgc_bspline_3d_scalar interface~compute_d2tgc~2->proc~compute_d2tgc_bspline_3d_vector interface~compute_d2tgc~2->proc~compute_d2tgc_nurbs_3d_scalar interface~compute_d2tgc~2->proc~compute_d2tgc_nurbs_3d_vector interface~compute_dtgc compute_dTgc interface~compute_dtgc->proc~compute_dtgc_bspline_2d_scalar interface~compute_dtgc->proc~compute_dtgc_bspline_2d_vector interface~compute_dtgc->proc~compute_dtgc_nurbs_2d_scalar interface~compute_dtgc->proc~compute_dtgc_nurbs_2d_vector interface~compute_dtgc~2 compute_dTgc interface~compute_dtgc~2->proc~compute_dtgc_bspline_3d_scalar interface~compute_dtgc~2->proc~compute_dtgc_bspline_3d_vector interface~compute_dtgc~2->proc~compute_dtgc_nurbs_3d_scalar interface~compute_dtgc~2->proc~compute_dtgc_nurbs_3d_vector interface~compute_tgc compute_Tgc interface~compute_tgc->proc~compute_tgc_bspline_2d_scalar interface~compute_tgc->proc~compute_tgc_bspline_2d_vector interface~compute_tgc->proc~compute_tgc_nurbs_2d_scalar interface~compute_tgc->proc~compute_tgc_nurbs_2d_vector interface~compute_tgc~2 compute_Tgc interface~compute_tgc~2->proc~compute_tgc_bspline_3d_scalar interface~compute_tgc~2->proc~compute_tgc_bspline_3d_vector interface~compute_tgc~2->proc~compute_tgc_nurbs_3d_scalar interface~compute_tgc~2->proc~compute_tgc_nurbs_3d_vector interface~compute_xg compute_Xg interface~compute_xg->proc~compute_xg_bspline_2d interface~compute_xg->proc~compute_xg_bspline_2d_1point interface~compute_xg->proc~compute_xg_nurbs_2d_1point proc~compute_xg_nurbs_2d compute_Xg_nurbs_2d interface~compute_xg->proc~compute_xg_nurbs_2d interface~compute_xg~2 compute_Xg interface~compute_xg~2->proc~compute_xg_bspline_3d interface~compute_xg~2->proc~compute_xg_bspline_3d_1point interface~compute_xg~2->proc~compute_xg_nurbs_3d_1point proc~compute_xg_nurbs_3d compute_Xg_nurbs_3d interface~compute_xg~2->proc~compute_xg_nurbs_3d interface~gauss_leg->proc~gauss_legendre_2d interface~gauss_leg->proc~gauss_legendre_3d proc~compute_xg_nurbs_2d->proc~cmp_tgc_2d proc~compute_xg_nurbs_3d->proc~cmp_tgc_3d program~lsq_fit_bspline_2d lsq_fit_bspline_2d program~lsq_fit_bspline_2d->proc~lsq_fit_bspline proc~create nurbs_surface%create program~lsq_fit_bspline_2d->proc~create program~lsq_fit_bspline_3d lsq_fit_bspline_3d program~lsq_fit_bspline_3d->proc~lsq_fit_bspline~2 proc~create~2 nurbs_volume%create program~lsq_fit_bspline_3d->proc~create~2 program~test_nurbs_volume test_nurbs_volume program~test_nurbs_volume->proc~lsq_fit_bspline~2 program~test_nurbs_volume->proc~create~2 none~basis~2 nurbs_volume%basis program~test_nurbs_volume->none~basis~2 none~derivative2~2 nurbs_volume%derivative2 program~test_nurbs_volume->none~derivative2~2 none~derivative~2 nurbs_volume%derivative program~test_nurbs_volume->none~derivative~2 proc~cmp_volume nurbs_volume%cmp_volume program~test_nurbs_volume->proc~cmp_volume proc~nearest_point2~2 nurbs_volume%nearest_point2 program~test_nurbs_volume->proc~nearest_point2~2 proc~ansatz nurbs_surface%ansatz proc~ansatz->interface~gauss_leg none~derivative nurbs_surface%derivative proc~ansatz->none~derivative proc~ansatz~2 nurbs_volume%ansatz proc~ansatz~2->interface~gauss_leg proc~ansatz~2->none~derivative~2 proc~ansatz~3 nurbs_curve%ansatz proc~ansatz~3->interface~gauss_leg proc~basis_scalar nurbs_surface%basis_scalar proc~basis_scalar->interface~compute_tgc proc~basis_scalar~2 nurbs_volume%basis_scalar proc~basis_scalar~2->interface~compute_tgc~2 proc~basis_vector nurbs_surface%basis_vector proc~basis_vector->interface~compute_tgc proc~basis_vector~2 nurbs_volume%basis_vector proc~basis_vector~2->interface~compute_tgc~2 proc~cmp_xg nurbs_surface%cmp_Xg proc~cmp_xg->interface~compute_xg proc~cmp_xg~2 nurbs_volume%cmp_Xg proc~cmp_xg~2->interface~compute_xg~2 proc~create->interface~compute_xg proc~create~2->interface~compute_xg~2 proc~derivative2_scalar nurbs_surface%derivative2_scalar proc~derivative2_scalar->interface~compute_d2tgc proc~derivative2_scalar~2 nurbs_volume%derivative2_scalar proc~derivative2_scalar~2->interface~compute_d2tgc~2 proc~derivative2_vector nurbs_surface%derivative2_vector proc~derivative2_vector->interface~compute_d2tgc proc~derivative2_vector~2 nurbs_volume%derivative2_vector proc~derivative2_vector~2->interface~compute_d2tgc~2 proc~derivative_scalar nurbs_surface%derivative_scalar proc~derivative_scalar->interface~compute_dtgc proc~derivative_scalar~2 nurbs_volume%derivative_scalar proc~derivative_scalar~2->interface~compute_dtgc~2 proc~derivative_vector nurbs_surface%derivative_vector proc~derivative_vector->interface~compute_dtgc proc~derivative_vector~2 nurbs_volume%derivative_vector proc~derivative_vector~2->interface~compute_dtgc~2 proc~export_xth_in_xg nurbs_surface%export_Xth_in_Xg proc~export_xth_in_xg->interface~compute_xg proc~export_xth_in_xg~2 nurbs_volume%export_Xth_in_Xg proc~export_xth_in_xg~2->interface~compute_xg~2 proc~put_to_nurbs nurbs_volume%put_to_nurbs proc~put_to_nurbs->interface~compute_xg~2 none~basis nurbs_surface%basis none~basis->proc~basis_scalar none~basis->proc~basis_vector none~basis~2->proc~basis_scalar~2 none~basis~2->proc~basis_vector~2 none~derivative->proc~derivative_scalar none~derivative->proc~derivative_vector none~derivative2 nurbs_surface%derivative2 none~derivative2->proc~derivative2_scalar none~derivative2->proc~derivative2_vector none~derivative2~2->proc~derivative2_scalar~2 none~derivative2~2->proc~derivative2_vector~2 none~derivative~2->proc~derivative_scalar~2 none~derivative~2->proc~derivative_vector~2 proc~cmp_area nurbs_surface%cmp_area proc~cmp_area->proc~ansatz proc~cmp_length nurbs_curve%cmp_length proc~cmp_length->proc~ansatz~3 proc~cmp_volume->proc~ansatz~2 proc~nearest_point2 nurbs_surface%nearest_point2 proc~nearest_point2->proc~cmp_xg proc~nearest_point2->proc~create proc~nearest_point2->none~derivative2 proc~nearest_point2~2->proc~cmp_xg~2 proc~nearest_point2~2->proc~create~2 proc~nearest_point2~2->none~derivative2~2 program~example3_surface example3_surface program~example3_surface->proc~create program~example3_volume example3_volume program~example3_volume->proc~create~2 program~example_bend_pipe example_bend_pipe program~example_bend_pipe->proc~create~2 program~example_bend_pipe->proc~export_xth_in_xg~2 program~example_helix_pipe example_helix_pipe program~example_helix_pipe->proc~create~2 program~example_helix_pipe->proc~export_xth_in_xg~2 program~example_nurbs_surface example_nurbs_surface program~example_nurbs_surface->proc~create program~example_nurbs_surface->proc~export_xth_in_xg program~example_nurbs_volume example_nurbs_volume program~example_nurbs_volume->proc~create~2 program~example_nurbs_volume->proc~export_xth_in_xg~2 program~example_ppm1 example_ppm1 program~example_ppm1->proc~create program~example_ppm2 example_ppm2 program~example_ppm2->proc~create program~example_ppm3 example_ppm3 program~example_ppm3->proc~create program~example_put_to_nurbs example_put_to_nurbs program~example_put_to_nurbs->proc~put_to_nurbs program~example_toroidal_pipe example_toroidal_pipe program~example_toroidal_pipe->proc~create~2 program~example_toroidal_pipe->proc~export_xth_in_xg~2 program~example_twist_taper example_twist_taper program~example_twist_taper->proc~create~2 program~example_twist_taper->proc~export_xth_in_xg~2 program~fdm_test_surface fdm_test_surface program~fdm_test_surface->proc~create program~fdm_test_surface->none~derivative2 program~fdm_test_volume fdm_test_volume program~fdm_test_volume->proc~create~2 program~fdm_test_volume->none~derivative2~2 program~nearest_point_2d nearest_point_2d program~nearest_point_2d->proc~create program~nearest_point_2d->proc~nearest_point2 program~nearest_point_2d_bench nearest_point_2d_bench program~nearest_point_2d_bench->proc~create program~nearest_point_3d nearest_point_3d program~nearest_point_3d->proc~create~2 program~nearest_point_3d->proc~nearest_point2~2 program~poisson_iga_solver_2d poisson_iga_solver_2d program~poisson_iga_solver_2d->proc~ansatz program~poisson_iga_solver_2d->proc~create program~poisson_iga_solver_2d->none~basis program~poisson_iga_solver_3d poisson_iga_solver_3d program~poisson_iga_solver_3d->proc~ansatz~2 program~poisson_iga_solver_3d->proc~create~2 program~poisson_iga_solver_3d->none~basis~2 program~shape_c_2d shape_C_2d program~shape_c_2d->proc~create program~shape_c_3d shape_C_3d program~shape_c_3d->proc~create~2 program~shape_half_ring_2d shape_half_ring_2d program~shape_half_ring_2d->proc~create program~shape_half_ring_3d shape_half_ring_3d program~shape_half_ring_3d->proc~create~2 program~shape_hexahedron shape_hexahedron program~shape_hexahedron->proc~create~2 program~shape_ring_2d shape_ring_2d program~shape_ring_2d->proc~create program~shape_ring_3d shape_ring_3d program~shape_ring_3d->proc~create~2 program~shape_tetragon shape_tetragon program~shape_tetragon->proc~create program~test_nurbs_surface test_nurbs_surface program~test_nurbs_surface->proc~create program~test_nurbs_surface->none~basis program~test_nurbs_surface->none~derivative program~test_nurbs_surface->none~derivative2 program~test_nurbs_surface->proc~cmp_area program~test_nurbs_surface->proc~nearest_point2 program~compute_area compute_area program~compute_area->proc~cmp_area program~compute_length compute_length program~compute_length->proc~cmp_length program~compute_volume compute_volume program~compute_volume->proc~cmp_volume program~test_nurbs_curve test_nurbs_curve program~test_nurbs_curve->proc~cmp_length