Modules

ModuleSource FileDescription
athena athena.f90

Module containing all publicly available types and procedures

Read more…
athena__accuracy athena_accuracy.f90

Module containing functions to compute the accuracy of a model

athena__activation athena_activation.f90

Module containing the activation function setup

athena__activation_gaussian athena_activation_gaussian.f90

Module containing implementation of the Gaussian activation function

Read more…
athena__activation_leaky_relu athena_activation_leaky_relu.f90

Module containing implementation of the leaky ReLU activation function

Read more…
athena__activation_linear athena_activation_linear.f90

Module containing implementation of the linear activation function

Read more…
athena__activation_none athena_activation_none.f90

Module containing implementation of no activation function (identity)

Read more…
athena__activation_piecewise athena_activation_piecewise.f90

Module containing implementation of the piecewise activation function https://doi.org/10.48550/arXiv.1809.09534

athena__activation_relu athena_activation_relu.f90

Module containing implementation of the ReLU activation function

Read more…
athena__activation_selu athena_activation_selu.f90

Module containing implementation of the SELU activation function

Read more…
athena__activation_sigmoid athena_activation_sigmoid.f90

Module containing implementation of the sigmoid activation function

Read more…
athena__activation_softmax athena_activation_softmax.f90

Module containing implementation of the softmax activation function

Read more…
athena__activation_swish athena_activation_swish.f90

Module containing implementation of the swish activation function

Read more…
athena__activation_tanh athena_activation_tanh.f90

Module containing implementation of the tanh activation function

Read more…
athena__actv_layer athena_activation_layer.f90

Module containing implementation of the activation layer

Read more…
athena__add_layer athena_add_layer.f90

Module containing implementation of an element-wise addition layer

Read more…
athena__avgpool1d_layer athena_avgpool1d_layer.f90

Module containing implementation of a 1D average pooling layer

Read more…
athena__avgpool2d_layer athena_avgpool2d_layer.f90

Module containing implementation of a 2D average pooling layer

Read more…
athena__avgpool3d_layer athena_avgpool3d_layer.f90

Module containing implementation of a 3D average pooling layer

Read more…
athena__base_layer athena_base_layer.f90

Module containing the abstract base layer type

Read more…
   athena__base_layer_submodule athena_base_layer_sub.f90

Submodule containing the implementation of the base layer types

Read more…
   athena__base_layer_submodule_init athena_base_layer_sub_init.f90

Submodule containing the implementation of the base layer types

Read more…
   athena__base_layer_submodule_io athena_base_layer_sub_io.f90

Submodule containing the implementation of the base layer types

Read more…
athena__batchnorm1d_layer athena_batchnorm1d_layer.f90

Module containing implementation of 0D and 1D batch normalisation layers

Read more…
athena__batchnorm2d_layer athena_batchnorm2d_layer.f90

Module containing implementation of 2D batch normalisation layer

Read more…
athena__batchnorm3d_layer athena_batchnorm3d_layer.f90

Module containing implementation of 3D batch normalisation layers

Read more…
athena__clipper athena_clipper.f90

Module containing functions to clip gradients

Read more…
athena__concat_layer athena_concat_layer.f90

Module containing implementation of a concatenation layer

Read more…
athena__container_layer athena_container_layer.f90

Module containing types and interfaces for the container type

Read more…
   athena__container_layer_submodule athena_container_layer_sub.f90

Submodule containing the implementation for the container layer

Read more…
athena__conv1d_layer athena_conv1d_layer.f90

Module containing implementation of a 1D convolutional layer

Read more…
athena__conv2d_layer athena_conv2d_layer.f90

Module containing implementation of a 2D convolutional layer

Read more…
athena__conv3d_layer athena_conv3d_layer.f90

Module containing implementation of a 3D convolutional layer

Read more…
athena__diffstruc_extd athena_diffstruc_extd.f90

Module for extended differential structure types for Athena

   athena__diffstruc_extd_loss_submodule athena_diffstruc_extd_loss.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule athena_diffstruc_extd_sub.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_batchnorm athena_diffstruc_extd_sub_batchnorm.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_conv athena_diffstruc_extd_sub_conv.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_merge athena_diffstruc_extd_sub_merge.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_msgpass_duvenaud athena_diffstruc_extd_sub_duvenaud.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_msgpass_kipf athena_diffstruc_extd_sub_kipf.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_nop athena_diffstruc_extd_sub_nop.f90

Submodule containing autodiff operations for the Graph Neural Operator

Read more…
   athena__diffstruc_extd_submodule_pad athena_diffstruc_extd_sub_pad.f90

Submodule containing implementations for extended diffstruc array operations

   athena__diffstruc_extd_submodule_pool athena_diffstruc_extd_sub_pool.f90

Submodule containing implementations for extended diffstruc array operations

athena__dropblock2d_layer athena_dropblock2d_layer.f90

Module containing implementation of a 2D dropblock layer

Read more…
athena__dropblock3d_layer athena_dropblock3d_layer.f90

Module containing implementation of a 3D dropblock layer

Read more…
athena__dropout_layer athena_dropout_layer.f90

Module containing implementation of a dropout layer

Read more…
athena__duvenaud_msgpass_layer athena_duvenaud_msgpass_layer.f90

Module implementing Duvenaud message passing for molecular graphs

Read more…
athena__dynamic_lno_layer athena_dynamic_lno_layer.f90

Module containing implementation of a Laplace Neural Operator layer

Read more…
athena__fixed_lno_layer athena_fixed_lno_layer.f90

Module containing implementation of a Laplace Neural Operator layer

Read more…
athena__flatten_layer athena_flatten_layer.f90

Module containing implementation of a flattening layer

Read more…
athena__full_layer athena_full_layer.f90

Module containing implementation of a fully connected layer

Read more…
athena__graph_nop_layer athena_graph_nop_layer.f90

Module containing implementation of a Graph Neural Operator (GNO) layer

Read more…
athena__initialiser athena_initialiser.f90

Module containing functions to set up initialisers

Read more…
athena__initialiser_data athena_initialiser_data.f90

Module containing the implementation of the data initialiser

Read more…
athena__initialiser_gaussian athena_initialiser_gaussian.f90

Module containing the Gaussian initialisation

Read more…
athena__initialiser_glorot athena_initialiser_glorot.f90

Module containing the implementation of the Glorot initialiser

Read more…
athena__initialiser_he athena_initialiser_he.f90

Module containing the implementation of the He initialiser

Read more…
athena__initialiser_ident athena_initialiser_ident.f90

Module containing the implementation of the identity initialiser

Read more…
athena__initialiser_lecun athena_initialiser_lecun.f90

Module containing the implementation of the LeCun initialiser

Read more…
athena__initialiser_ones athena_initialiser_ones.f90

Module containing the implementation of the Ones initialiser

Read more…
athena__initialiser_zeros athena_initialiser_zeros.f90

Module containing the implementation of the Zeros initialiser

Read more…
athena__input_layer athena_input_layer.f90

Module containing procedures for an input layer

Read more…
athena__io_utils athena_io_utils.F90

Module for handling errors and io calls in the program.

Read more…
athena__kipf_msgpass_layer athena_kipf_msgpass_layer.f90

Module implementing Kipf & Welling Graph Convolutional Network (GCN)

Read more…
athena__learning_rate_decay athena_lr_decay.f90

Module containing learning decay rate types and procedures

athena__loss athena_loss.f90

Module containing loss function implementations

Read more…
athena__maxpool1d_layer athena_maxpool1d_layer.f90

Module containing implementation of a 1D max pooling layer

Read more…
athena__maxpool2d_layer athena_maxpool2d_layer.f90

Module containing implementation of a 2D max pooling layer

Read more…
athena__maxpool3d_layer athena_maxpool3d_layer.f90

Module containing implementation of a 3D max pooling layer

Read more…
athena__metrics athena_metrics.f90

Module containing functions to compute the accuracy of a model

Read more…
athena__misc_ml athena_misc_ml.f90

Module containing miscellaneous machine learning procedures

Read more…
athena__misc_types athena_misc_types.f90

Module containing custom derived types and interfaces for ATHENA

Read more…
   athena__misc_types_submodule athena_misc_types_sub.f90

Submodule containing implementations for derived types

athena__msgpass_layer athena_msgpass_layer.f90

Module containing the types and interfaces of a message passing layer

   athena__msgpass_layer_submodule athena_msgpass_layer_sub.f90

Submodule containing implementations for a message passing layer

athena__network athena_network.f90

Module containing the network class used to define a neural network

Read more…
   athena__network_submodule athena_network_sub.f90

Submodule containing implementations for the network module

athena__neural_operator_layer athena_neural_operator_layer.f90

Module containing implementation of a simple neural operator layer

Read more…
athena__normalisation athena_normalisation.f90

Module containing procedures for normalising input and output data

athena__onnx athena_onnx.f90

Module containing the types and interfaces for ONNX operations

   athena__onnx_read_submodule athena_onnx_read_sub.f90

Submodule containing the ONNX import procedures.

Read more…
   athena__onnx_write_submodule athena_onnx_write_sub.f90

Submodule containing the ONNX export procedures.

Read more…
athena__onnx_creators athena_onnx_creators.f90

Module containing ONNX layer creator functions

athena__onnx_msgpass_utils athena_onnx_msgpass_utils.f90

Shared ONNX builder helpers for message-passing layers.

Read more…
athena__onnx_nop_utils athena_onnx_nop_utils.f90

Shared utility routines for NOP ONNX export/import.

athena__onnx_utils athena_onnx_utils.f90

Shared utility routines for ONNX JSON export

Read more…
athena__optimiser athena_optimiser.f90

Module containing implementations of optimisation methods

Read more…
athena__orthogonal_attention_layer athena_orthogonal_attention_layer.f90

Module containing implementation of an Orthogonal Attention layer

Read more…
athena__orthogonal_nop_block athena_orthogonal_nop_block.f90

Module containing implementation of an Orthogonal Neural Operator layer

Read more…
athena__pad1d_layer athena_pad1d_layer.f90

Module containing implementation of a 1D padding layer

Read more…
athena__pad2d_layer athena_pad2d_layer.f90

Module containing implementation of a 2D padding layer

Read more…
athena__pad3d_layer athena_pad3d_layer.f90

Module containing implementation of a 3D padding layer

Read more…
athena__random athena_random.f90

Module containing functions to initialise the random number generator

athena__recurrent_layer athena_recurrent_layer.f90

Module containing implementation of recurrent neural network layers

Read more…
athena__regulariser athena_regulariser.f90

Module containing regularisation methods

Read more…
athena__reshape_layer athena_reshape_layer.f90

Module containing implementation of a reshape layer

Read more…
athena__spectral_filter_layer athena_spectral_filter_layer.f90

Module containing implementation of a Spectral Filter layer

Read more…
athena__tools_infile athena_tools_infile.f90

Module containing custom input file reading functions and subroutines

Read more…
athena_wandb athena_wandb.F90

Athena interface to Weights & Biases (wandb) experiment tracking.

Read more…