custom_model_builder_procedures Submodule

Contains procedures associated with the CustomModelBuilder class


Uses


Module Subroutines

module subroutine initCustomBuilder(this, env, normObject, modelTag)

Constructs the model for this builder and sets it into defined state

Arguments

Type IntentOptional Attributes Name
class(CustomModelBuilder), intent(inout) :: this
class(EnvironmentWrapper), intent(inout) :: env
class(Normalization), intent(in) :: normObject

Reference normalization object

character(len=*), intent(in) :: modelTag

Tag of this model

module subroutine addCustomModel(this, modellerObj)

Adds the model built by the builder and resets the builder to become undefined for further use

Arguments

Type IntentOptional Attributes Name
class(CustomModelBuilder), intent(inout) :: this
class(Modeller), intent(inout) :: modellerObj

module subroutine addTermToModel(this, termJSONPrefix, termTag, env, normObject, mbData)

Adds individual term to model buffer based on JSON file data

Arguments

Type IntentOptional Attributes Name
class(CustomModelBuilder), intent(inout) :: this
character(len=*), intent(in) :: termJSONPrefix
character(len=*), intent(in) :: termTag
class(EnvironmentWrapper), intent(inout) :: env
class(Normalization), intent(in) :: normObject
class(ModelboundData), intent(in), optional :: mbData

module subroutine applyTermGenerator(this, env, normObject, modelTag, currentNumTerms, mbData)

Checks for associated term generator in JSON file and applies to custom model

Arguments

Type IntentOptional Attributes Name
class(CustomModelBuilder), intent(inout) :: this
class(EnvironmentWrapper), intent(inout) :: env
class(Normalization), intent(in) :: normObject

Reference normalization object

character(len=*), intent(in) :: modelTag

Tag of this model

integer(kind=ik), intent(in) :: currentNumTerms
class(ModelboundData), intent(in), optional :: mbData