wenoof_objects_factory Module

module~~wenoof_objects_factory~~UsesGraph module~wenoof_objects_factory wenoof_objects_factory module~wenoof_base_object wenoof_base_object module~wenoof_base_object->module~wenoof_objects_factory module~wenoof_optimal_weights wenoof_optimal_weights module~wenoof_base_object->module~wenoof_optimal_weights module~wenoof_polynomials wenoof_polynomials module~wenoof_base_object->module~wenoof_polynomials module~wenoof_smoothness_indicators_js wenoof_smoothness_indicators_js module~wenoof_base_object->module~wenoof_smoothness_indicators_js module~wenoof_polynomials_js wenoof_polynomials_js module~wenoof_base_object->module~wenoof_polynomials_js module~wenoof_alpha_coefficients wenoof_alpha_coefficients module~wenoof_base_object->module~wenoof_alpha_coefficients module~wenoof_alpha_coefficients_m wenoof_alpha_coefficients_m module~wenoof_base_object->module~wenoof_alpha_coefficients_m module~wenoof_smoothness_indicators wenoof_smoothness_indicators module~wenoof_base_object->module~wenoof_smoothness_indicators module~wenoof_alpha_coefficients_js wenoof_alpha_coefficients_js module~wenoof_alpha_coefficients_js->module~wenoof_objects_factory module~wenoof_alpha_coefficients_js->module~wenoof_alpha_coefficients_m module~wenoof_optimal_weights->module~wenoof_objects_factory module~wenoof_optimal_weights_js wenoof_optimal_weights_js module~wenoof_optimal_weights->module~wenoof_optimal_weights_js module~wenoof_polynomials->module~wenoof_objects_factory module~wenoof_polynomials->module~wenoof_polynomials_js module~wenoof_smoothness_indicators_js->module~wenoof_objects_factory module~wenoof_polynomials_js->module~wenoof_objects_factory module~wenoof_alpha_coefficients->module~wenoof_objects_factory module~wenoof_alpha_coefficients->module~wenoof_alpha_coefficients_js module~wenoof_alpha_coefficients->module~wenoof_alpha_coefficients_m module~wenoof_alpha_coefficients_z wenoof_alpha_coefficients_z module~wenoof_alpha_coefficients->module~wenoof_alpha_coefficients_z module~wenoof_optimal_weights_js->module~wenoof_objects_factory module~wenoof_alpha_coefficients_m->module~wenoof_objects_factory module~wenoof_smoothness_indicators->module~wenoof_objects_factory module~wenoof_smoothness_indicators->module~wenoof_smoothness_indicators_js module~wenoof_alpha_coefficients_z->module~wenoof_objects_factory module~wenoof_alpha_coefficients_z->module~wenoof_alpha_coefficients_m module~penf penf module~penf->module~wenoof_alpha_coefficients_js module~penf->module~wenoof_optimal_weights module~penf->module~wenoof_polynomials module~penf->module~wenoof_smoothness_indicators_js module~penf->module~wenoof_polynomials_js module~penf->module~wenoof_alpha_coefficients module~penf->module~wenoof_optimal_weights_js module~penf->module~wenoof_alpha_coefficients_m module~penf->module~wenoof_smoothness_indicators module~penf->module~wenoof_alpha_coefficients_z module~penf_global_parameters_variables penf_global_parameters_variables module~penf_global_parameters_variables->module~penf module~penf_b_size penf_b_size module~penf_global_parameters_variables->module~penf_b_size module~penf_stringify penf_stringify module~penf_global_parameters_variables->module~penf_stringify module~penf_b_size->module~penf module~penf_b_size->module~penf_stringify module~penf_stringify->module~penf iso_fortran_env iso_fortran_env iso_fortran_env->module~penf_stringify
Help

Wenoof factory.

Used By

module~~wenoof_objects_factory~~UsedByGraph module~wenoof_objects_factory wenoof_objects_factory module~wenoof_interpolator wenoof_interpolator module~wenoof_objects_factory->module~wenoof_interpolator module~wenoof_interpolator_js wenoof_interpolator_js module~wenoof_interpolator->module~wenoof_interpolator_js module~wenoof wenoof module~wenoof_interpolator->module~wenoof module~wenoof_interpolator_js->module~wenoof program~sin_reconstruction sin_reconstruction module~wenoof->program~sin_reconstruction
Help


Derived Types

type, public :: objects_factory

Factory, create an instance of concrete extension of base_object given its constructor.

Type-Bound Procedures

generic, public :: create => create_alpha_coefficients, create_optimal_weights, create_polynomials, create_smoothness_indicators

Create a concrete instance of alpha_coefficients or optimal_weights or polynomials or smoothness_indicators.

procedure, public, nopass :: create_base_object

Create a concrete instance of base_object.

procedure, private, nopass :: create_alpha_coefficients

Create a concrete instance of alpha_coefficients.

procedure, private, nopass :: create_optimal_weights

Create a concrete instance of optimal_weights.

procedure, private, nopass :: create_polynomials

Create a concrete instance of polynomials.

procedure, private, nopass :: create_smoothness_indicators

Create a concrete instance of smoothness_indicators.


Subroutines

private subroutine create_base_object(constructor, object)

Create an instance of concrete extension of base_object given its constructor.

Arguments

Type IntentOptional AttributesName
class(base_object_constructor), intent(in) :: constructor

Constructor.

class(base_object), intent(out), allocatable:: object

Object.

private subroutine create_alpha_coefficients(constructor, object)

Create an instance of concrete extension of alpha_coefficients given its constructor.

Arguments

Type IntentOptional AttributesName
class(alpha_coefficients_constructor), intent(in) :: constructor

Constructor.

class(alpha_coefficients), intent(out), allocatable:: object

Object.

private subroutine create_optimal_weights(constructor, object)

Create an instance of concrete extension of optimal_weights given its constructor.

Arguments

Type IntentOptional AttributesName
class(optimal_weights_constructor), intent(in) :: constructor

Constructor.

class(optimal_weights), intent(out), allocatable:: object

Object.

private subroutine create_polynomials(constructor, object)

Create an instance of concrete extension of polynomials given its constructor.

Arguments

Type IntentOptional AttributesName
class(polynomials_constructor), intent(in) :: constructor

Constructor.

class(polynomials), intent(out), allocatable:: object

Object.

private subroutine create_smoothness_indicators(constructor, object)

Create an instance of concrete extension of smoothness_indicators given its constructor.

Arguments

Type IntentOptional AttributesName
class(smoothness_indicators_constructor), intent(in) :: constructor

Constructor.

class(smoothness_indicators), intent(out), allocatable:: object

Object.