phygnn.layers.custom_layers

Custom tf layers.

Classes

ExpandDims(*args, **kwargs)

Layer to add an extra dimension to a tensor.

FNO(*args, **kwargs)

Custom layer for fourier neural operator block

FlattenAxis(*args, **kwargs)

Layer to flatten an axis from a 5D spatiotemporal Tensor into axis-0 observations.

FlexiblePadding(*args, **kwargs)

Class to perform padding on tensors

FunctionalLayer(*args, **kwargs)

Custom layer to implement the tensorflow layer functions (e.g., add, subtract, multiply, maximum, and minimum) with a constant value.

GaussianAveragePooling2D(*args, **kwargs)

Custom layer to implement tensorflow average pooling layer but with a gaussian kernel.

GaussianNoiseAxis(*args, **kwargs)

Layer to apply random noise along a given axis.

LogTransform(*args, **kwargs)

Log transform or inverse transform of data

SigLin(*args, **kwargs)

Sigmoid linear unit.

SkipConnection(*args, **kwargs)

Custom layer to implement a skip connection.

SpatialExpansion(*args, **kwargs)

Class to expand the spatial dimensions of tensors with shape: (n_observations, n_spatial_0, n_spatial_1, n_features)

SpatioTemporalExpansion(*args, **kwargs)

Class to expand the spatiotemporal dimensions of tensors with shape: (n_observations, n_spatial_0, n_spatial_1, n_temporal, n_features)

SqueezeAndExcitation(*args, **kwargs)

Custom layer for squeeze and excitation block for convolutional networks

Sup3rAdder(*args, **kwargs)

Layer to add high-resolution data to a sup3r model in the middle of a super resolution forward pass.

Sup3rConcat(*args, **kwargs)

Layer to concatenate a high-resolution feature to a sup3r model in the middle of a super resolution forward pass.

TileLayer(*args, **kwargs)

Layer to tile (repeat) data across a given axis.

UnitConversion(*args, **kwargs)

Layer to convert units per feature channel using the linear transform: y = x * scalar + adder