class_docstr: Class providing a method to create Gaussian orthogonal matrix.
  
  Class is responsible for constructing 2D Gaussian orthogonal arrays.
class_docstr_tok: ["Class","providing","a","method","to","create","Gaussian","orthogonal","matrix",".","Class","is","responsible","for","constructing","2D","Gaussian","orthogonal","arrays","."]
code: def __init__(self, nb_rows, nb_columns, key, scaling=0):
      self.nb_rows = nb_rows
      self.nb_columns = nb_columns
      self.key = key
      self.scaling = scaling
  
imports: import abc
  import enum
  import functools
  from typing import Any, Callable, Dict, Optional, Sequence, Tuple, Iterable
  from absl import logging
  from flax import linen
  import jax
  from jax import lax
  from jax import random
  import jax.numpy
  import numpy
  from scenic.model_lib.layers import attention_layers
label_desc: Use image node_id 1 to create a new GaussianOrthogonalRandomMatrix object from inherited base classes: RandomMatrix with example: obj = GaussianOrthogonalRandomMatrix(nb_rows, nb_columns, key, scaling)