class_docstr: A potentially complex-valued linear layer. Reduces to a regular linear
  layer if `complex_valued=False`.
class_docstr_tok: ["A","potentially","complex-valued","linear","layer",".","Reduces","to","a","regular","linear","layer","if","`","complex_valued=False","`","."]
code: def __init__(self, input_dim, output_dim, complex_valued):
      super().__init__()
      self.complex_valued = complex_valued
      if self.complex_valued:
          self.re = nn.Linear(input_dim, output_dim)
          self.im = nn.Linear(input_dim, output_dim)
      else:
          self.lin = nn.Linear(input_dim, output_dim)
  
imports: import functools
  from functools import partial
  import numpy
  import torch
  from torch import Tensor, nn
  from torch.nn.modules.batchnorm import _BatchNorm
label_desc: Use image node_id 1 to create a new ComplexLinear object from inherited base classes: nn with example: obj = ComplexLinear(input_dim, output_dim, complex_valued)