code: func NewActivation(mode ActivationMode, reluNanOpt NanPropagation, coef float64) (retVal *Activation, err error) {
  	var internal C.cudnnActivationDescriptor_t
  	if err := result(C.cudnnCreateActivationDescriptor(&internal)); err != nil {
  		return nil, err
  	}
  
  	if err := result(C.cudnnSetActivationDescriptor(internal, mode.C(), reluNanOpt.C(), C.double(coef))); err != nil {
  		return nil, err
  	}
  
  	retVal = &Activation{
  		internal:   internal,
  		mode:       mode,
  		reluNanOpt: reluNanOpt,
  		coef:       coef,
  	}
  	runtime.SetFinalizer(retVal, destroyActivation)
  	return retVal, nil
  }
docs: // NewActivation creates a new Activation.