MADNESS 0.10.1
madness::max_of_x_1_smooth Struct Reference

#include <masks_and_boxes.h>

Static Public Member Functions

static double compute_factor (const double &r, const double &tightness, const double &rmax)
 return a smooth transition of linear r to a constant at radius r
static double compute_tightness (const double deviation_at_dot_8_radius, const double rmax)
 compute the tightness parameter given the deviation at 0.8 radius

Detailed Description

construct a smooth approximation for the piecewise function f(x)={{x, x<1}, {1,x>1}}. see https://doi.org/10.1186/s40064-016-3278-y

Member Function Documentation

◆ compute_factor()

double madness::max_of_x_1_smooth::compute_factor ( const double & r,
const double & tightness,
const double & rmax )
inlinestatic

return a smooth transition of linear r to a constant at radius r

Parameters
[in]rnorm of the n-dimensional vector
[in]tightnesssee the compute_tightness() function
[in]max_radiuswhere the curve flattens
Returns
factor multiply your vector with the factor xyz->xyz*factor

References a, b, beta, c, and madness::f.

Referenced by madness::harmonic_potential_boxed::operator()(), madness::R_times_arg_div_R::operator()(), and test_smooth_maxout().

◆ compute_tightness()

double madness::max_of_x_1_smooth::compute_tightness ( const double deviation_at_dot_8_radius,
const double rmax )
inlinestatic

compute the tightness parameter given the deviation at 0.8 radius

simple linear fit

References a, and b.

Referenced by madness::harmonic_potential_boxed::harmonic_potential_boxed(), madness::R_times_arg_div_R::R_times_arg_div_R(), and test_smooth_maxout().


The documentation for this struct was generated from the following file: