code: public SDVariable var(@NonNull String name, @NonNull WeightInitScheme weightInitScheme, @NonNull org.nd4j.linalg.api.buffer.DataType dataType, @NonNull long... shape) {
          return var(name, VariableType.VARIABLE, weightInitScheme, dataType, shape);
      }
docs: Variable initialization with a specified {@link WeightInitScheme}
  This method creates VARIABLE type SDVariable - i.e., must be floating point, and is a trainable parameter. See {@link VariableType} for more details.
  
  @param name             the name of the variable
  @param shape            the shape of the array to be created
  @param weightInitScheme the weight initialization scheme
  @return the created variable