This module defines the 'nurbs_volume' type for representing a Non-Uniform Rational B-Spline (NURBS) volume.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
If elem
is not present: Wc
refers to the full weight vector.
If elem
is present: Wc
refers to the element-local weight vector (Wce
).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) | ||
integer, | intent(in), | optional, | contiguous | :: | elem(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) | ||
integer, | intent(in), | optional, | contiguous | :: | elem(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(debug), | public | :: | err |
101: size mismatch (weights vs control points), 102: missing control points, 103: missing knot vector, 104: missing geometry points, 105: missing weights, 106: lsq fit underdetermined |
|||
real(kind=rk), | private, | allocatable | :: | Wc(:) |
Weights for the control points (1D array: [nc(1)nc(2)nc(3)]) |
||
real(kind=rk), | private, | allocatable | :: | Xc(:,:) |
Control points (2D array: [nc(1)nc(2)nc(3), dim]) |
||
real(kind=rk), | private, | allocatable | :: | Xg(:,:) |
Geometry points (2D array: [ng(1)ng(2)ng(3), dim]) |
||
real(kind=rk), | private, | allocatable | :: | Xt(:,:) |
Evaluation parameter values (2D array: [ng(1)ng(2)ng(3), dim] |
||
real(kind=rk), | private, | allocatable | :: | Xt1(:) |
Evaluation parameter values in the first direction (1D array: [ng(1)]) |
||
real(kind=rk), | private, | allocatable | :: | Xt2(:) |
Evaluation parameter values in the second direction (1D array: [ng(2)]) |
||
real(kind=rk), | private, | allocatable | :: | Xt3(:) |
Evaluation parameter values in the third direction (1D array: [ng(3)]) |
||
integer, | private | :: | degree(3) |
Degree (order) of the volume |
|||
integer, | private, | allocatable | :: | elemConn(:,:) |
IGA element connectivity |
||
integer, | private, | allocatable | :: | elemConn_Xc_vis(:,:) |
Connectivity for visualization of control points |
||
integer, | private, | allocatable | :: | elemConn_Xg_vis(:,:) |
Connectivity for visualization of geometry points |
||
real(kind=rk), | private, | allocatable | :: | knot1(:) |
Knot vector in the first direction (1D array) |
||
real(kind=rk), | private, | allocatable | :: | knot2(:) |
Knot vector in the second direction (1D array) |
||
real(kind=rk), | private, | allocatable | :: | knot3(:) |
Knot vector in the third direction (1D array) |
||
integer, | private | :: | nc(3) |
Number of control points in each direction |
|||
integer, | private | :: | ng(3) |
Number of geometry points in each direction |
procedure, public :: ansatz | Compute the shape functions, derivative of shape functions and dV |
generic, public :: basis => basis_vector, basis_scalar | Compute the basis functions of the NURBS volume |
procedure, public :: cmp_Xg | Compute geometry points |
procedure, public :: cmp_degree | Compute degree of the NURBS volume |
procedure, public :: cmp_degreeFace | Compute degrees of the faces |
procedure, public :: cmp_elem | Generate IGA element connectivity |
procedure, public :: cmp_elemFace | Compute faces of the IGA elements |
procedure, public :: cmp_elemFace_Xc_vis | Compute faces of the control points |
procedure, public :: cmp_elemFace_Xg_vis | Compute faces of the geometry points |
procedure, public :: cmp_elem_Xc_vis | Generate connectivity for control points |
procedure, public :: cmp_elem_Xg_vis | Generate connectivity for geometry points |
procedure, public :: cmp_elem_Xth | Generate connectivity for parameter points |
procedure, public :: cmp_nc | Compute number of required control points |
procedure, public :: cmp_volume | Compute the volume of the NURBS volume |
procedure, public :: create | Generate geometry points |
generic, public :: derivative => derivative_vector, derivative_scalar | Compute the derivative of the NURBS volume |
generic, public :: derivative2 => derivative2_vector, derivative2_scalar | Compute the second derivative of the NURBS volume |
procedure, public :: elevate_degree | Elevate the degree of the NURBS volume |
procedure, public :: export_Xc | Export control points to VTK file |
procedure, public :: export_Xg | Export geometry points to VTK file |
procedure, public :: export_Xth | Export parameter space to VTK file |
procedure, public :: export_Xth_in_Xg | Export parameter space in geometry points to VTK file |
procedure, public :: finalize | Finalize the NURBS volume object |
generic, public :: get_Wc => get_Wc_all, get_Wci | Get weights |
generic, public :: get_Xc => get_Xc_all, get_Xci, get_Xcid | Get control points |
generic, public :: get_Xg => get_Xg_all, get_Xgi, get_Xgid | Get geometry points |
procedure, public :: get_Xt | Get parameter values |
procedure, public :: get_continuity | Compute and return the continuity of the NURBS volume |
generic, public :: get_degree => get_degree_all, get_degree_dir | Get degree of the NURBS volume |
procedure, public :: get_elem | Get IGA element connectivity |
procedure, public :: get_elem_Xc_vis | Get connectivity for control points |
procedure, public :: get_elem_Xg_vis | Get connectivity for geometry points |
generic, public :: get_knot => get_knoti, get_knot_all | Get knot vector |
procedure, public :: get_multiplicity | Compute and return the multiplicity of the knots |
generic, public :: get_nc => get_nc_all, get_nc_dir | Get number of control points |
procedure, public :: get_ng | Get number of geometry points |
procedure, public :: insert_knots | Insert knots into the knot vector |
procedure, public :: is_rational | Check if the NURBS volume is rational |
procedure, public :: lsq_fit_bspline | Fit B-spline volume to structured data points using least squares |
procedure, public :: modify_Wc | Modify weights |
procedure, public :: modify_Xc | Modify control points |
procedure, public :: nearest_point | Find the nearest point on the NURBS volume (Approximation) |
procedure, public :: nearest_point2 | Find the nearest point on the NURBS volume (Minimization - Newtons method) |
procedure, public :: put_to_nurbs | Put a shape to a NURBS volume |
procedure, public :: remove_knots | Remove knots from the knot vector |
procedure, public :: rotate_Xc | Rotate control points |
procedure, public :: rotate_Xg | Rotate geometry points |
generic, public :: set => set1, set2, set3, set4 | Set NURBS volume |
procedure, public :: set_C | Set a C-shape |
procedure, public :: set_elem | Set IGA element connectivity |
procedure, public :: set_elem_Xc_vis | Set connectivity for control points |
procedure, public :: set_elem_Xg_vis | Set connectivity for geometry points |
procedure, public :: set_half_ring | Set a half ring |
procedure, public :: set_hexahedron | Set a hexahedron |
procedure, public :: set_ring | Set a ring |
procedure, public :: show | Show the NURBS object using PyVista |
procedure, public :: translate_Xc | Translate control points |
procedure, public :: translate_Xg | Translate geometry points |
procedure, private :: basis_scalar | Compute the basis functions of the NURBS volume |
procedure, private :: basis_vector | Compute the basis functions of the NURBS volume |
procedure, private :: derivative2_scalar | Compute the second derivative of the NURBS volume |
procedure, private :: derivative2_vector | Compute the second derivative of the NURBS volume |
procedure, private :: derivative_scalar | Compute the derivative of the NURBS volume |
procedure, private :: derivative_vector | Compute the derivative of the NURBS volume |
procedure, private :: get_Wc_all | Get all weights |
procedure, private :: get_Wci | Get i-th weight |
procedure, private :: get_Xc_all | Get all control points |
procedure, private :: get_Xci | Get i-th control point |
procedure, private :: get_Xcid | Get i-th control point in a specific direction |
procedure, private :: get_Xg_all | Get all geometry points |
procedure, private :: get_Xgi | Get i-th geometry point |
procedure, private :: get_Xgid | Get i-th geometry point in a specific direction |
procedure, private :: get_degree_all | Get degree of the NURBS volume in all directions |
procedure, private :: get_degree_dir | Get degree of the NURBS volume in a specific direction |
procedure, private :: get_knot_all | Get all knot vectors |
procedure, private :: get_knoti | Get i-th knot value |
procedure, private :: get_nc_all | Get number of control points in all directions |
procedure, private :: get_nc_dir | Get number of control points in a specific direction |
procedure, private :: set1 | Set knot vectors, control points and weights for the NURBS volume object |
procedure, private :: set2 | Set NURBS volume using nodes of parameter space, degree, continuity, control points and weights |
procedure, private :: set3 | Set Bezier or Rational Bezier volume using control points and weights |
procedure, private :: set4 | Set NURBS volume using degree, number of control points, control points and weights |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xti(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in) | :: | degree(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | face |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
number of nodes in each direction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | elem | |||
integer, | intent(in) | :: | face |
number of nodes in each direction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | elem | |||
integer, | intent(in) | :: | face |
number of nodes in each direction
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | elem | |||
integer, | intent(in) | :: | face |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in), | optional, | contiguous | :: | p(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in), | optional, | contiguous | :: | p(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in), | optional, | contiguous | :: | p(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | n | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir | |||
integer, | intent(in) | :: | i |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | ie | |||
integer, | intent(in) | :: | ig | |||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc_dXg(:,:) | ||
real(kind=rk), | intent(out) | :: | dV | |||
integer, | intent(in), | optional | :: | ngauss(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | res1 | ||
integer, | intent(in), | optional | :: | res2 | ||
integer, | intent(in), | optional | :: | res3 | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt1(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt2(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt3(:) | |
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(out) | :: | volume | |||
integer, | intent(in), | optional | :: | ngauss(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) | ||
integer, | intent(in), | optional, | contiguous | :: | elem(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
If elem
is not present: Wc
refers to the full weight vector.
If elem
is present: Wc
refers to the element-local weight vector (Wce
).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:) | ||
integer, | intent(in), | optional, | contiguous | :: | elem(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
integer, | intent(in) | :: | degree(3) | |||
integer, | intent(in) | :: | nc(3) | |||
integer, | intent(in), | optional | :: | ng(3) | ||
real(kind=rk), | intent(in), | contiguous | :: | Wc(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | res1 | ||
integer, | intent(in), | optional | :: | res2 | ||
integer, | intent(in), | optional | :: | res3 | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt1(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt2(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt3(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:) | ||
real(kind=rk), | intent(out), | optional, | allocatable | :: | dTgc(:,:) | |
real(kind=rk), | intent(out), | optional, | allocatable | :: | Tgc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | res1 | ||
integer, | intent(in), | optional | :: | res2 | ||
integer, | intent(in), | optional | :: | res3 | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt1(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt2(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt3(:) | |
real(kind=rk), | intent(out), | allocatable | :: | d2Tgc(:,:,:) | ||
real(kind=rk), | intent(out), | optional, | allocatable | :: | dTgc(:,:,:) | |
real(kind=rk), | intent(out), | optional, | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xt(:) | ||
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:) | ||
real(kind=rk), | intent(out), | optional, | allocatable | :: | Tgc(:) | |
integer, | intent(in), | optional, | contiguous | :: | elem(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | optional | :: | res1 | ||
integer, | intent(in), | optional | :: | res2 | ||
integer, | intent(in), | optional | :: | res3 | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt1(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt2(:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xt3(:) | |
real(kind=rk), | intent(out), | allocatable | :: | dTgc(:,:,:) | ||
real(kind=rk), | intent(out), | optional, | allocatable | :: | Tgc(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | dir | |||
integer, | intent(in) | :: | t | |||
real(kind=rk), | intent(out), | optional, | allocatable | :: | B(:,:) | |
real(kind=rk), | intent(out), | optional, | allocatable | :: | Bs(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | filename | |||
real(kind=rk), | intent(in), | optional, | contiguous | :: | point_data(:,:) | |
character(len=*), | intent(in), | optional, | contiguous | :: | field_names(:) | |
character(len=*), | intent(in), | optional | :: | encoding |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | filename | |||
real(kind=rk), | intent(in), | optional, | contiguous | :: | point_data(:,:) | |
character(len=*), | intent(in), | optional, | contiguous | :: | field_names(:) | |
character(len=*), | intent(in), | optional | :: | encoding |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
character(len=*), | intent(in) | :: | filename | |||
real(kind=rk), | intent(in), | optional, | contiguous | :: | point_data(:,:) | |
character(len=*), | intent(in), | optional, | contiguous | :: | field_names(:) | |
character(len=*), | intent(in), | optional | :: | encoding |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | filename | |||
integer, | intent(in), | optional | :: | res | ||
character(len=*), | intent(in), | optional | :: | encoding |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | dir | |||
real(kind=rk), | intent(in), | contiguous | :: | Xth(:) | ||
integer, | intent(in), | contiguous | :: | r(:) | ||
real(kind=rk), | intent(out), | optional, | allocatable | :: | B(:,:) | |
real(kind=rk), | intent(out), | optional, | allocatable | :: | Bs(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xt(:,:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xdata(:,:) | ||
integer, | intent(in) | :: | ndata(3) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in) | :: | W | |||
integer, | intent(in) | :: | num |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in) | :: | X | |||
integer, | intent(in) | :: | num | |||
integer, | intent(in) | :: | dir |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(in) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | point_Xg(:) | ||
real(kind=rk), | intent(out), | optional | :: | nearest_Xg(size(point_Xg)) | ||
real(kind=rk), | intent(out), | optional | :: | nearest_Xt(3) | ||
integer, | intent(out), | optional | :: | id |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | point_Xg(:) | ||
real(kind=rk), | intent(in) | :: | tol | |||
integer, | intent(in) | :: | maxit | |||
real(kind=rk), | intent(out) | :: | nearest_Xt(3) | |||
real(kind=rk), | intent(out), | optional | :: | nearest_Xg(size(this%Xc,2)) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | X(:,:) | ||
integer, | intent(in), | optional, | contiguous | :: | elemConn(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in) | :: | dir | |||
real(kind=rk), | intent(in), | contiguous | :: | Xth(:) | ||
integer, | intent(in), | contiguous | :: | r(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in) | :: | alpha | |||
real(kind=rk), | intent(in) | :: | beta | |||
real(kind=rk), | intent(in) | :: | theta |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in) | :: | alpha | |||
real(kind=rk), | intent(in) | :: | beta | |||
real(kind=rk), | intent(in) | :: | theta |
Set control points and weights for the NURBS volume object.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | knot1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | knot3(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Wc(:) |
Set control points and weights for the NURBS volume object.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | Xth_dir1(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xth_dir2(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xth_dir3(:) | ||
integer, | intent(in), | contiguous | :: | degree(:) | ||
integer, | intent(in), | contiguous | :: | continuity1(:) | ||
integer, | intent(in), | contiguous | :: | continuity2(:) | ||
integer, | intent(in), | contiguous | :: | continuity3(:) | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Xc(:,:) | |
real(kind=rk), | intent(in), | optional, | contiguous | :: | Wc(:) |
Set Bezier or Rational Bezier volume using control points and weights.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | contiguous | :: | nc(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | contiguous | :: | degree(:) | ||
integer, | intent(in), | contiguous | :: | nc(:) | ||
real(kind=rk), | intent(in), | contiguous | :: | Xc(:,:) | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | center(:) | ||
real(kind=rk), | intent(in) | :: | radius1 | |||
real(kind=rk), | intent(in) | :: | radius2 | |||
real(kind=rk), | intent(in) | :: | length |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | contiguous | :: | elemConn(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | contiguous | :: | elemConn(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
integer, | intent(in), | contiguous | :: | elemConn(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | center(:) | ||
real(kind=rk), | intent(in) | :: | radius1 | |||
real(kind=rk), | intent(in) | :: | radius2 | |||
real(kind=rk), | intent(in) | :: | length |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | L(:) | ||
integer, | intent(in), | contiguous | :: | nc(:) | ||
real(kind=rk), | intent(in), | optional, | contiguous | :: | Wc(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | center(:) | ||
real(kind=rk), | intent(in) | :: | radius1 | |||
real(kind=rk), | intent(in) | :: | radius2 | |||
real(kind=rk), | intent(in) | :: | length |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
character(len=*), | intent(in) | :: | vtkfile_Xc | |||
character(len=*), | intent(in) | :: | vtkfile_Xg | |||
character(len=*), | intent(in), | optional | :: | vtkfile_Xth_in_Xg |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | vec(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(nurbs_volume), | intent(inout) | :: | this | |||
real(kind=rk), | intent(in), | contiguous | :: | vec(:) |