export_attributes_gaussian Function

private pure function export_attributes_gaussian(this) result(attributes)

Export Gaussian activation function attributes as ONNX attributes

Type Bound

gaussian_actv_type

Arguments

Type IntentOptional Attributes Name
class(gaussian_actv_type), intent(in) :: this

Gaussian activation type

Return Value type(onnx_attribute_type), allocatable, dimension(:)

Array of ONNX attributes


Source Code

  pure function export_attributes_gaussian(this) result(attributes)
    !! Export Gaussian activation function attributes as ONNX attributes
    implicit none

    ! Arguments
    class(gaussian_actv_type), intent(in) :: this
    !! Gaussian activation type
    type(onnx_attribute_type), allocatable, dimension(:) :: attributes
    !! Array of ONNX attributes

    ! Local variables
    character(50) :: buffer
    !! Temporary string buffer

    allocate(attributes(4))

    write(buffer, '(A)') this%name
    attributes(1) = onnx_attribute_type( &
         "name", "string", trim(adjustl(buffer)) )

    write(buffer, '(F10.6)') this%scale
    attributes(2) = onnx_attribute_type( &
         "scale", "float", trim(adjustl(buffer)) )

    write(buffer, '(F10.6)') this%sigma
    attributes(3) = onnx_attribute_type( &
         "sigma", "float", trim(adjustl(buffer)) )

    write(buffer, '(F10.6)') this%mu
    attributes(4) = onnx_attribute_type( &
         "mu", "float", trim(adjustl(buffer)) )

  end function export_attributes_gaussian