fdm_test_curve Program

Uses

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

Define control points for the NURBS curve Define weights for the control points (optional) Define knot vector

Set knot vector, control points, and weights for the NURBS curve object. Wc is optional

Generate the NURBS curve with a resolution of 20

Finalize the NURBS curve object Define control points for the NURBS curve Define knot vector

Set knot vector, control points for the NURBS curve object. Wc is optional

Generate the NURBS curve with a resolution of 20

Finalize the NURBS curve object


Calls

program~~fdm_test_curve~~CallsGraph program~fdm_test_curve fdm_test_curve none~derivative2 nurbs_curve%derivative2 program~fdm_test_curve->none~derivative2 none~set nurbs_curve%set program~fdm_test_curve->none~set proc~create nurbs_curve%create program~fdm_test_curve->proc~create proc~finalize nurbs_curve%finalize program~fdm_test_curve->proc~finalize proc~derivative2_scalar nurbs_curve%derivative2_scalar none~derivative2->proc~derivative2_scalar proc~derivative2_vector nurbs_curve%derivative2_vector none~derivative2->proc~derivative2_vector proc~set1 nurbs_curve%set1 none~set->proc~set1 proc~set1a nurbs_curve%set1a none~set->proc~set1a proc~set2 nurbs_curve%set2 none~set->proc~set2 proc~set3 nurbs_curve%set3 none~set->proc~set3 proc~set4 nurbs_curve%set4 none~set->proc~set4 interface~compute_xg compute_Xg proc~create->interface~compute_xg proc~is_rational nurbs_curve%is_rational proc~create->proc~is_rational proc~compute_xg_bspline_1d compute_Xg_bspline_1d interface~compute_xg->proc~compute_xg_bspline_1d proc~compute_xg_bspline_1d_1point compute_Xg_bspline_1d_1point interface~compute_xg->proc~compute_xg_bspline_1d_1point proc~compute_xg_nurbs_1d compute_Xg_nurbs_1d interface~compute_xg->proc~compute_xg_nurbs_1d proc~compute_xg_nurbs_1d_1point compute_Xg_nurbs_1d_1point interface~compute_xg->proc~compute_xg_nurbs_1d_1point proc~derivative2_scalar->proc~is_rational interface~compute_d2tgc compute_d2Tgc proc~derivative2_scalar->interface~compute_d2tgc proc~derivative2_vector->proc~is_rational proc~derivative2_vector->interface~compute_d2tgc proc~cmp_degree nurbs_curve%cmp_degree proc~set1->proc~cmp_degree proc~set1a->proc~cmp_degree proc~compute_knot_vector compute_knot_vector proc~set2->proc~compute_knot_vector proc~set3->proc~cmp_degree proc~compute_d2tgc_bspline_1d_scalar compute_d2Tgc_bspline_1d_scalar interface~compute_d2tgc->proc~compute_d2tgc_bspline_1d_scalar proc~compute_d2tgc_bspline_1d_vector compute_d2Tgc_bspline_1d_vector interface~compute_d2tgc->proc~compute_d2tgc_bspline_1d_vector proc~compute_d2tgc_nurbs_1d_scalar compute_d2Tgc_nurbs_1d_scalar interface~compute_d2tgc->proc~compute_d2tgc_nurbs_1d_scalar proc~compute_d2tgc_nurbs_1d_vector compute_d2Tgc_nurbs_1d_vector interface~compute_d2tgc->proc~compute_d2tgc_nurbs_1d_vector proc~get_multiplicity nurbs_curve%get_multiplicity proc~cmp_degree->proc~get_multiplicity proc~repelem repelem proc~compute_knot_vector->proc~repelem proc~basis_bspline basis_bspline proc~compute_xg_bspline_1d->proc~basis_bspline proc~compute_xg_bspline_1d_1point->proc~basis_bspline proc~cmp_tgc_1d cmp_Tgc_1d proc~compute_xg_nurbs_1d->proc~cmp_tgc_1d proc~compute_xg_nurbs_1d_1point->proc~basis_bspline proc~cmp_tgc_1d->proc~basis_bspline proc~basis_bspline_2der basis_bspline_2der proc~compute_d2tgc_bspline_1d_scalar->proc~basis_bspline_2der proc~compute_d2tgc_bspline_1d_vector->proc~basis_bspline_2der proc~compute_d2tgc_nurbs_1d_scalar->proc~basis_bspline_2der proc~compute_d2tgc_nurbs_1d_vector->proc~basis_bspline_2der interface~compute_multiplicity compute_multiplicity proc~get_multiplicity->interface~compute_multiplicity proc~compute_multiplicity1 compute_multiplicity1 interface~compute_multiplicity->proc~compute_multiplicity1 proc~compute_multiplicity2 compute_multiplicity2 interface~compute_multiplicity->proc~compute_multiplicity2

Variables

Type Attributes Name Initial
real(kind=rk), allocatable :: Tgc(:)
real(kind=rk), allocatable :: Tgcm(:)
real(kind=rk), allocatable :: Tgcp(:)
real(kind=rk), allocatable :: Wc(:)

Arrays for control points and weights

real(kind=rk), allocatable :: Xc(:,:)

Arrays for control points and weights

real(kind=rk) :: Xt
real(kind=rk) :: Xtm
real(kind=rk) :: Xtp
type(nurbs_curve) :: curve

Declare a NURBS curve object

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(:)
real(kind=rk) :: knot(6)

Array for knot vector

real(kind=rk) :: tol