Globals Library 1.0
Loading...
Searching...
No Matches
gaussquadrature::gaussq Type Reference

Public Member Functions

procedure, pass, public init (this, lun_err, ngauss)
 Static constructor for gaussquadrature::gaussq.
procedure, pass, public kill (this, lun_err)
 Static destructor for gaussquadrature::gaussq.
procedure, pass, public info (this, lun_out)
 Info procedure for gaussquadrature::gaussq.
procedure, pass, public on_interval (this, a, b)
 Procedure to compute Gauss points of \([a,b]\).
procedure, pass, public on_cell (this, ax, bx, ay, by)
 Procedure to compute Gauss points of \([a_x,b_x] \times [a_y,b_y]\).

Public Attributes

integer ngauss
 Number of 1d Gauss points.
real(kind=double), dimension(:), allocatable coeff1d
 Dimension (::ngauss) Coefficients of 1d Gauss points on \([-1,+1]\).
real(kind=double), dimension(:), allocatable coord_ab
 Dimension (::ngauss) Cordinate of Gauss points on interval \([a,b]\). Only allocated, it will be gauss = (b-a)/2 coeff + (a+b) /2.
real(kind=double), dimension(:), allocatable weight1d
 Dimension (::ngauss). Weight of 1d Gauss points on \([-1,+1]\).
real(kind=double), dimension(:), allocatable weight_ab
 Dimension (::ngauss). Weight of 1d Gauss points on \([a,b]\).
real(kind=double), dimension(:, :), allocatable coord_cell
 Dimension (::ngauss,2). Cordinate of 2d gauss points (first column \(x\), second column \(y\)).
real(kind=double), dimension(:, :), allocatable weight_cell
 Dimension (::ngauss,2). Weights of 2d Gauss points (first column \(x\), second column \(y\)).
real(kind=double), dimension(:), allocatable weight2d
 Dimension (::ngauss**2) Tensioral production of 1d Gauss weights.

Detailed Description

Definition at line 11 of file modGaussQuadrature.f90.

Member Function/Subroutine Documentation

◆ init()

procedure, pass, public gaussquadrature::gaussq::init ( class(gaussq), intent(inout) this,
integer, intent(in) lun_err,
integer, intent(in) ngauss )

Static constructor for gaussquadrature::gaussq.


Allocate all the variables. Define variable gaussq::coeff1d and gaussq::weight1d.

Parameters
[in]lun_errunit number for error messages
[in]ngaussNumber of Gauss points

Definition at line 41 of file modGaussQuadrature.f90.

◆ kill()

procedure, pass, public gaussquadrature::gaussq::kill ( class(gaussq), intent(inout) this,
integer, intent(in) lun_err )

Static destructor for gaussquadrature::gaussq.


Deallocate all the variables.

Parameters
[in]lun_errunit number for error messagges

Definition at line 43 of file modGaussQuadrature.f90.

◆ info()

procedure, pass, public gaussquadrature::gaussq::info ( class(gaussq), intent(in) this,
integer, intent(in) lun_out )

Info procedure for gaussquadrature::gaussq.


Parameters
[in]lun_outunit number for output messagges

Definition at line 45 of file modGaussQuadrature.f90.

◆ on_interval()

procedure, pass, public gaussquadrature::gaussq::on_interval ( class(gaussq), intent(inout) this,
real(double), intent(in) a,
real(double), intent(in) b )

Procedure to compute Gauss points of \([a,b]\).


Define variables gaussq::coord_ab and gaussq::weight_ab.

Parameters
[in]aleft endpoint of interval
[in]bright endpoint of interval

Definition at line 47 of file modGaussQuadrature.f90.

◆ on_cell()

procedure, pass, public gaussquadrature::gaussq::on_cell ( class(gaussq), intent(inout) this,
real(double), intent(in) ax,
real(double), intent(in) bx,
real(double), intent(in) ay,
real(double), intent(in) by )

Procedure to compute Gauss points of \([a_x,b_x] \times [a_y,b_y]\).


Gauss points in \(\mathbb{R}^{2}\) are computed by tensorization of 1d Gauss points. Define variables gaussq::coord_cell and gaussq::weight_cell.

Parameters
[in]axleft endpoint interval variable \(x\).
[in]bxright endpoint interval variable \(x\).
[in]ayleft endpoint interval variable \(y\).
[in]byright endpoint interval variable y.

Definition at line 49 of file modGaussQuadrature.f90.

Member Data Documentation

◆ ngauss

integer gaussquadrature::gaussq::ngauss

Number of 1d Gauss points.

Definition at line 13 of file modGaussQuadrature.f90.

◆ coeff1d

real(kind=double), dimension(:), allocatable gaussquadrature::gaussq::coeff1d

Dimension (::ngauss) Coefficients of 1d Gauss points on \([-1,+1]\).

Definition at line 16 of file modGaussQuadrature.f90.

◆ coord_ab

real(kind=double), dimension(:), allocatable gaussquadrature::gaussq::coord_ab

Dimension (::ngauss) Cordinate of Gauss points on interval \([a,b]\). Only allocated, it will be gauss = (b-a)/2 coeff + (a+b) /2.

Definition at line 21 of file modGaussQuadrature.f90.

◆ weight1d

real(kind=double), dimension(:), allocatable gaussquadrature::gaussq::weight1d

Dimension (::ngauss). Weight of 1d Gauss points on \([-1,+1]\).

Definition at line 24 of file modGaussQuadrature.f90.

◆ weight_ab

real(kind=double), dimension(:), allocatable gaussquadrature::gaussq::weight_ab

Dimension (::ngauss). Weight of 1d Gauss points on \([a,b]\).

Definition at line 27 of file modGaussQuadrature.f90.

◆ coord_cell

real(kind=double), dimension(:, :), allocatable gaussquadrature::gaussq::coord_cell

Dimension (::ngauss,2). Cordinate of 2d gauss points (first column \(x\), second column \(y\)).

Definition at line 31 of file modGaussQuadrature.f90.

◆ weight_cell

real(kind=double), dimension(:, :), allocatable gaussquadrature::gaussq::weight_cell

Dimension (::ngauss,2). Weights of 2d Gauss points (first column \(x\), second column \(y\)).

Definition at line 35 of file modGaussQuadrature.f90.

◆ weight2d

real(kind=double), dimension(:), allocatable gaussquadrature::gaussq::weight2d

Dimension (::ngauss**2) Tensioral production of 1d Gauss weights.

Definition at line 38 of file modGaussQuadrature.f90.


The documentation for this type was generated from the following file: