PODDeepONet#
- class pinnx.nn.PODDeepONet(pod_basis, layer_sizes_branch, activation, kernel_initializer=KaimingUniform(mode=fan_in, nonlinearity=relu, unit=1), layer_sizes_trunk=None, regularization=None, input_transform=None, output_transform=None)[source]#
Deep operator network with proper orthogonal decomposition (POD) for dataset in the format of Cartesian product.
- Parameters:
pod_basis – POD basis used in the trunk net.
layer_sizes_branch (
Sequence[int]) – A list of integers as the width of a fully connected network, or (dim, f) where dim is the input dimension and f is a network function. The width of the last layer in the branch and trunk net should be equal.activation (
Union[str,Callable,Dict[str,str],Dict[str,Callable]]) – If activation is astring, then the same activation is used in both trunk and branch nets. If activation is adict, then the trunk net uses the activation activation[“trunk”], and the branch net uses activation[“branch”].layer_sizes_trunk (
Sequence[int]) – A list of integers as the width of a fully connected network. IfNone, then only use POD basis as the trunk net.
References