code: def trunc_normal_(tensor, mean=0.0, std=1.0, a=-2.0, b=2.0):
      # type: (Tensor, float, float, float, float) -> Tensor
      r"""Fills the input Tensor with values drawn from a truncated
      normal distribution. The values are effectively drawn from the
      normal distribution :math:`\mathcal{N}(\text{mean}, \text{std}^2)`
      with values outside :math:`[a, b]` redrawn until they are within
      the bounds. The method used for generating the random values works
      best when :math:`a \leq \text{mean} \leq b`.
  
      NOTE: this impl is similar to the PyTorch trunc_normal_, the bounds [a, b] are
      applied while sampling the normal with mean/std applied, therefore a, b args
      should be adjusted to match the range of mean, std args.
  
      Args:
          tensor: an n-dimensional `torch.Tensor`
          mean: the mean of the normal distribution
          std: the standard deviation of the normal distribution
          a: the minimum cutoff value
          b: the maximum cutoff value
      Examples:
          >>> w = torch.empty(3, 5)
          >>> nn.init.trunc_normal_(w)
      """
      with torch.no_grad():
          return _trunc_normal_(tensor, mean, std, a, b)
  
file_path: pytorch-image-models/timm/layers/weight_init.py
imports: import torch
  import math
  import warnings
  from torch.nn.init import _calculate_fan_in_and_fan_out
label_desc: Use image node_id 2 for calling a global function with example usage: trunc_normal_(tensor, mean, std, a, b) and returns: _trunc_normal_