class_docstr: Reader class for VII L1B products in netCDF format.
class_docstr_tok: ["Reader","class","for","VII","L1B","products","in","netCDF","format","."]
docstr: Perform the orthorectification.
  
  Args:
      variable: xarray DataArray containing the dataset to correct for orthorectification.
      orthorect_data_name: name of the orthorectification correction data in the product.
  
  Returns:
      DataArray: array containing the corrected values and all the original metadata.
docstr_tok: ["Perform","the","orthorectification",".","Args",":","variable",":","xarray","DataArray","containing","the","dataset","to","correct","for","orthorectification",".","orthorect_data_name",":","name","of","the","orthorectification","correction","data","in","the","product",".","Returns",":","DataArray",":","array","containing","the","corrected","values","and","all","the","original","metadata","."]
code: def _perform_orthorectification(self, variable, orthorect_data_name):
      """Perform the orthorectification.
  
      Args:
          variable: xarray DataArray containing the dataset to correct for orthorectification.
          orthorect_data_name: name of the orthorectification correction data in the product.
  
      Returns:
          DataArray: array containing the corrected values and all the original metadata.
  
      """
      try:
          orthorect_data = self[orthorect_data_name]
          # Convert the orthorectification delta values from meters to degrees
          # based on the simplified formula using mean Earth radius
          variable += np.degrees(orthorect_data / MEAN_EARTH_RADIUS)
      except KeyError:
          logger.warning(
              "Required dataset %s for orthorectification not available, skipping",
              orthorect_data_name,
          )
      return variable
  
file_path: satpy/satpy/readers/vii_l1b_nc.py
imports: import logging
  import numpy
  from satpy.readers.vii_base_nc import ViiNCBaseFileHandler
  from satpy.readers.vii_utils import C1, C2, MEAN_EARTH_RADIUS
label_desc: Use image node_id 3 for calling the ViiL1bNCFileHandler obj's underlying member method code with example usage: obj._perform_orthorectification(variable, orthorect_data_name) and returns: variable