lenstronomy.LensModel package¶
Subpackages¶
- lenstronomy.LensModel.LightConeSim package
- lenstronomy.LensModel.MultiPlane package
- lenstronomy.LensModel.Profiles package
- Submodules
- lenstronomy.LensModel.Profiles.arc_perturbations module
- lenstronomy.LensModel.Profiles.base_profile module
- lenstronomy.LensModel.Profiles.chameleon module
- lenstronomy.LensModel.Profiles.cnfw module
- lenstronomy.LensModel.Profiles.cnfw_ellipse module
- lenstronomy.LensModel.Profiles.const_mag module
- lenstronomy.LensModel.Profiles.constant_shift module
- lenstronomy.LensModel.Profiles.convergence module
- lenstronomy.LensModel.Profiles.coreBurkert module
- lenstronomy.LensModel.Profiles.cored_density module
- lenstronomy.LensModel.Profiles.cored_density_2 module
- lenstronomy.LensModel.Profiles.cored_density_exp module
- lenstronomy.LensModel.Profiles.cored_density_mst module
- lenstronomy.LensModel.Profiles.curved_arc_const module
- lenstronomy.LensModel.Profiles.curved_arc_sis_mst module
- lenstronomy.LensModel.Profiles.curved_arc_spp module
- lenstronomy.LensModel.Profiles.curved_arc_spt module
- lenstronomy.LensModel.Profiles.curved_arc_tan_diff module
- lenstronomy.LensModel.Profiles.dipole module
- lenstronomy.LensModel.Profiles.elliptical_density_slice module
- lenstronomy.LensModel.Profiles.epl module
- lenstronomy.LensModel.Profiles.epl_numba module
- lenstronomy.LensModel.Profiles.flexion module
- lenstronomy.LensModel.Profiles.flexionfg module
- lenstronomy.LensModel.Profiles.gauss_decomposition module
- lenstronomy.LensModel.Profiles.gaussian_ellipse_kappa module
- lenstronomy.LensModel.Profiles.gaussian_ellipse_potential module
- lenstronomy.LensModel.Profiles.gaussian_kappa module
- lenstronomy.LensModel.Profiles.gaussian_potential module
- lenstronomy.LensModel.Profiles.hernquist module
- lenstronomy.LensModel.Profiles.hernquist_ellipse module
- lenstronomy.LensModel.Profiles.hessian module
- lenstronomy.LensModel.Profiles.interpol module
- lenstronomy.LensModel.Profiles.multi_gaussian_kappa module
- lenstronomy.LensModel.Profiles.multipole module
- lenstronomy.LensModel.Profiles.nfw module
- lenstronomy.LensModel.Profiles.nfw_ellipse module
- lenstronomy.LensModel.Profiles.nfw_mass_concentration module
- lenstronomy.LensModel.Profiles.nfw_vir_trunc module
- lenstronomy.LensModel.Profiles.nie module
- lenstronomy.LensModel.Profiles.nie_potential module
- lenstronomy.LensModel.Profiles.numerical_deflections module
- lenstronomy.LensModel.Profiles.p_jaffe module
- lenstronomy.LensModel.Profiles.p_jaffe_ellipse module
- lenstronomy.LensModel.Profiles.pemd module
- lenstronomy.LensModel.Profiles.point_mass module
- lenstronomy.LensModel.Profiles.sersic module
- lenstronomy.LensModel.Profiles.sersic_ellipse_kappa module
- lenstronomy.LensModel.Profiles.sersic_ellipse_potential module
- lenstronomy.LensModel.Profiles.sersic_utils module
- lenstronomy.LensModel.Profiles.shapelet_pot_cartesian module
- lenstronomy.LensModel.Profiles.shapelet_pot_polar module
- lenstronomy.LensModel.Profiles.shear module
- lenstronomy.LensModel.Profiles.sie module
- lenstronomy.LensModel.Profiles.sis module
- lenstronomy.LensModel.Profiles.sis_truncate module
- lenstronomy.LensModel.Profiles.spemd module
- lenstronomy.LensModel.Profiles.spep module
- lenstronomy.LensModel.Profiles.splcore module
- lenstronomy.LensModel.Profiles.spp module
- lenstronomy.LensModel.Profiles.tnfw module
- lenstronomy.LensModel.Profiles.uldm module
- Module contents
- lenstronomy.LensModel.QuadOptimizer package
- lenstronomy.LensModel.Solver package
Submodules¶
lenstronomy.LensModel.convergence_integrals module¶
-
lenstronomy.LensModel.convergence_integrals.
potential_from_kappa_grid
(kappa, grid_spacing)[source]¶ lensing potential on the convergence grid the computation is performed as a convolution of the Green’s function with the convergence map using FFT
Parameters: - kappa – 2d grid of convergence values
- grid_spacing – pixel size of grid
Returns: lensing potential in a 2d grid at positions x_grid, y_grid
-
lenstronomy.LensModel.convergence_integrals.
potential_from_kappa_grid_adaptive
(kappa_high_res, grid_spacing, low_res_factor, high_res_kernel_size)[source]¶ lensing potential on the convergence grid the computation is performed as a convolution of the Green’s function with the convergence map using FFT
Parameters: - kappa_high_res – 2d grid of convergence values
- grid_spacing – pixel size of grid
- low_res_factor – lower resolution factor of larger scale kernel.
- high_res_kernel_size – int, size of high resolution kernel in units of degraded pixels
Returns: lensing potential in a 2d grid at positions x_grid, y_grid
-
lenstronomy.LensModel.convergence_integrals.
deflection_from_kappa_grid
(kappa, grid_spacing)[source]¶ deflection angles on the convergence grid the computation is performed as a convolution of the Green’s function with the convergence map using FFT
Parameters: - kappa – convergence values for each pixel (2-d array)
- grid_spacing – pixel size of grid
Returns: numerical deflection angles in x- and y- direction
-
lenstronomy.LensModel.convergence_integrals.
deflection_from_kappa_grid_adaptive
(kappa_high_res, grid_spacing, low_res_factor, high_res_kernel_size)[source]¶ deflection angles on the convergence grid with adaptive FFT the computation is performed as a convolution of the Green’s function with the convergence map using FFT The grid is returned in the lower resolution grid
Parameters: - kappa_high_res – convergence values for each pixel (2-d array)
- grid_spacing – pixel size of high resolution grid
- low_res_factor – lower resolution factor of larger scale kernel.
- high_res_kernel_size – int, size of high resolution kernel in units of degraded pixels
Returns: numerical deflection angles in x- and y- direction
-
lenstronomy.LensModel.convergence_integrals.
potential_kernel
(num_pix, delta_pix)[source]¶ numerical gridded integration kernel for convergence to lensing kernel with given pixel size
Parameters: - num_pix – integer; number of pixels of kernel per axis
- delta_pix – pixel size (per dimension in units of angle)
Returns: kernel for lensing potential
-
lenstronomy.LensModel.convergence_integrals.
deflection_kernel
(num_pix, delta_pix)[source]¶ numerical gridded integration kernel for convergence to deflection angle with given pixel size
Parameters: - num_pix – integer; number of pixels of kernel per axis, should be odd number to have a defined center
- delta_pix – pixel size (per dimension in units of angle)
Returns: kernel for x-direction and kernel of y-direction deflection angles
lenstronomy.LensModel.lens_model module¶
-
class
lenstronomy.LensModel.lens_model.
LensModel
(lens_model_list, z_lens=None, z_source=None, lens_redshift_list=None, cosmo=None, multi_plane=False, numerical_alpha_class=None, observed_convention_index=None, z_source_convention=None, cosmo_interp=False, z_interp_stop=None, num_z_interp=100, kwargs_interp=None)[source]¶ Bases:
object
class to handle an arbitrary list of lens models. This is the main lenstronomy LensModel API for all other modules.
-
alpha
(x, y, kwargs, k=None, diff=None)[source]¶ deflection angles
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – None or float. If set, computes the deflection as a finite numerical differential of the lensing potential. This differential is only applicable in the single lensing plane where the form of the lensing potential is analytically known
Returns: deflection angles in units of arcsec
-
arrival_time
(x_image, y_image, kwargs_lens, kappa_ext=0)[source]¶ Parameters: - x_image – image position
- y_image – image position
- kwargs_lens – lens model parameter keyword argument list
- kappa_ext – external convergence contribution not accounted in the lens model that leads to the same observables in position and relative fluxes but rescales the time delays
Returns: arrival time of image positions in units of days
-
curl
(x, y, kwargs, k=None, diff=None, diff_method='square')[source]¶ curl computation F_xy - F_yx
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – float, scale over which the finite numerical differential is computed. If None, then using the exact (if available) differentials.
- diff_method – string, ‘square’ or ‘cross’, indicating whether finite differentials are computed from a cross or a square of points around (x, y)
Returns: curl at position (x, y)
-
fermat_potential
(x_image, y_image, kwargs_lens, x_source=None, y_source=None)[source]¶ fermat potential (negative sign means earlier arrival time) for Multi-plane lensing, it computes the effective Fermat potential (derived from the arrival time and subtracted off the time-delay distance for the given cosmology). The units are given in arcsecond square.
Parameters: - x_image – image position
- y_image – image position
- x_source – source position
- y_source – source position
- kwargs_lens – list of keyword arguments of lens model parameters matching the lens model classes
Returns: fermat potential in arcsec**2 without geometry term (second part of Eqn 1 in Suyu et al. 2013) as a list
-
flexion
(x, y, kwargs, k=None, diff=1e-06, hessian_diff=True)[source]¶ third derivatives (flexion)
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – int or None, if set, only evaluates the differential from one model component
- diff – numerical differential length of Flexion
- hessian_diff – boolean, if true also computes the numerical differential length of Hessian (optional)
Returns: f_xxx, f_xxy, f_xyy, f_yyy
-
gamma
(x, y, kwargs, k=None, diff=None, diff_method='square')[source]¶ shear computation g1 = 1/2(d^2phi/dx^2 - d^2phi/dy^2) g2 = d^2phi/dxdy
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – float, scale over which the finite numerical differential is computed. If None, then using the exact (if available) differentials.
- diff_method – string, ‘square’ or ‘cross’, indicating whether finite differentials are computed from a cross or a square of points around (x, y)
Returns: gamma1, gamma2
-
hessian
(x, y, kwargs, k=None, diff=None, diff_method='square')[source]¶ hessian matrix
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – float, scale over which the finite numerical differential is computed. If None, then using the exact (if available) differentials.
- diff_method – string, ‘square’ or ‘cross’, indicating whether finite differentials are computed from a cross or a square of points around (x, y)
Returns: f_xx, f_xy, f_yx, f_yy components
-
kappa
(x, y, kwargs, k=None, diff=None, diff_method='square')[source]¶ lensing convergence k = 1/2 laplacian(phi)
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – float, scale over which the finite numerical differential is computed. If None, then using the exact (if available) differentials.
- diff_method – string, ‘square’ or ‘cross’, indicating whether finite differentials are computed from a cross or a square of points around (x, y)
Returns: lensing convergence
-
magnification
(x, y, kwargs, k=None, diff=None, diff_method='square')[source]¶ mag = 1/det(A) A = 1 - d^2phi/d_ij
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
- diff – float, scale over which the finite numerical differential is computed. If None, then using the exact (if available) differentials.
- diff_method – string, ‘square’ or ‘cross’, indicating whether finite differentials are computed from a cross or a square of points around (x, y)
Returns: magnification
-
potential
(x, y, kwargs, k=None)[source]¶ lensing potential
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
Returns: lensing potential in units of arcsec^2
-
ray_shooting
(x, y, kwargs, k=None)[source]¶ maps image to source position (inverse deflection)
Parameters: - x (numpy array) – x-position (preferentially arcsec)
- y (numpy array) – y-position (preferentially arcsec)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- k – only evaluate the k-th lens model
Returns: source plane positions corresponding to (x, y) in the image plane
-
set_dynamic
()[source]¶ deletes cache for static setting and makes sure the observed convention in the position of lensing profiles in the multi-plane setting is enabled. Dynamic is the default setting of this class enabling an accurate computation of lensing quantities with different parameters in the lensing profiles.
Returns: None
-
set_static
(kwargs)[source]¶ set this instance to a static lens model. This can improve the speed in evaluating lensing quantities at different positions but must not be used with different lens model parameters!
Parameters: kwargs – lens model keyword argument list Returns: kwargs_updated (in case of image position convention in multiplane lensing this is changed)
-
lenstronomy.LensModel.lens_model_extensions module¶
-
class
lenstronomy.LensModel.lens_model_extensions.
LensModelExtensions
(lensModel)[source]¶ Bases:
object
class with extension routines not part of the LensModel core routines
-
critical_curve_caustics
(kwargs_lens, compute_window=5, grid_scale=0.01, center_x=0, center_y=0)[source]¶ Parameters: - kwargs_lens – lens model kwargs
- compute_window – window size in arcsec where the critical curve is computed
- grid_scale – numerical grid spacing of the computation of the critical curves
- center_x – float, center of the window to compute critical curves and caustics
- center_y – float, center of the window to compute critical curves and caustics
Returns: lists of ra and dec arrays corresponding to different disconnected critical curves and their caustic counterparts
-
critical_curve_tiling
(kwargs_lens, compute_window=5, start_scale=0.5, max_order=10, center_x=0, center_y=0)[source]¶ Parameters: - kwargs_lens – lens model keyword argument list
- compute_window – total window in the image plane where to search for critical curves
- start_scale – float, angular scale on which to start the tiling from (if there are two distinct curves in a region, it might only find one.
- max_order – int, maximum order in the tiling to compute critical curve triangles
- center_x – float, center of the window to compute critical curves and caustics
- center_y – float, center of the window to compute critical curves and caustics
Returns: list of positions representing coordinates of the critical curve (in RA and DEC)
-
curved_arc_estimate
(x, y, kwargs_lens, smoothing=None, smoothing_3rd=0.001, tan_diff=False)[source]¶ performs the estimation of the curved arc description at a particular position of an arbitrary lens profile
Parameters: - x – float, x-position where the estimate is provided
- y – float, y-position where the estimate is provided
- kwargs_lens – lens model keyword arguments
- smoothing – (optional) finite differential of second derivative (radial and tangential stretches)
- smoothing_3rd – differential scale for third derivative to estimate the tangential curvature
- tan_diff – boolean, if True, also returns the relative tangential stretch differential in tangential direction
Returns: keyword argument list corresponding to a CURVED_ARC profile at (x, y) given the initial lens model
-
curved_arc_finite_area
(x, y, kwargs_lens, dr)[source]¶ computes an estimated curved arc over a finite extent mimicking the appearance of a finite source with radius dr
Parameters: - x – x-position (float)
- y – y-position (float)
- kwargs_lens – lens model keyword argument list
- dr – radius of finite source
Returns: keyword arguments of curved arc
-
hessian_eigenvectors
(x, y, kwargs_lens, diff=None)[source]¶ computes magnification eigenvectors at position (x, y)
Parameters: - x – x-position
- y – y-position
- kwargs_lens – lens model keyword arguments
Returns: radial stretch, tangential stretch
-
magnification_finite
(x_pos, y_pos, kwargs_lens, source_sigma=0.003, window_size=0.1, grid_number=100, polar_grid=False, aspect_ratio=0.5)[source]¶ returns the magnification of an extended source with Gaussian light profile :param x_pos: x-axis positons of point sources :param y_pos: y-axis position of point sources :param kwargs_lens: lens model kwargs :param source_sigma: Gaussian sigma in arc sec in source :param window_size: size of window to compute the finite flux :param grid_number: number of grid cells per axis in the window to numerically compute the flux :return: numerically computed brightness of the sources
-
magnification_finite_adaptive
(x_image, y_image, source_x, source_y, kwargs_lens, source_fwhm_parsec, z_source, cosmo=None, grid_resolution=None, grid_radius_arcsec=None, axis_ratio=0.5, tol=0.001, step_size=0.05, use_largest_eigenvalue=True, source_light_model='SINGLE_GAUSSIAN', dx=None, dy=None, size_scale=None, amp_scale=None, fixed_aperture_size=False)[source]¶ This method computes image magnifications with a finite-size background source assuming a Gaussian or a double Gaussian source light profile. It can be much faster that magnification_finite for lens models with many deflectors and a compact source. This is because most pixels in a rectangular window around a lensed image of a compact source do not map onto the source, and therefore don’t contribute to the integrated flux in the image plane.
Rather than ray tracing through a rectangular grid, this routine accelerates the computation of image magnifications with finite-size sources by ray tracing through an elliptical region oriented such that tracks the surface brightness of the lensed image. The aperture size is initially quite small, and increases in size until the flux inside of it (and hence the magnification) converges. The orientation of the elliptical aperture is computed from the magnification tensor evaluated at the image coordinate.
If for whatever reason you prefer a circular aperture to the elliptical approximation using the hessian eigenvectors, you can just set axis_ratio = 1.
To use the eigenvalues of the hessian matrix to estimate the optimum axis ratio, set axis_ratio = 0.
The default settings for the grid resolution and ray tracing window size work well for sources with fwhm between 0.5 - 100 pc.
Parameters: - x_image – a list or array of x coordinates [units arcsec]
- y_image – a list or array of y coordinates [units arcsec]
- kwargs_lens – keyword arguments for the lens model
- source_fwhm_parsec – the size of the background source [units parsec]
- z_source – the source redshift
- cosmo – (optional) an instance of astropy.cosmology; if not specified, a default cosmology will be used
- grid_resolution – the grid resolution in units arcsec/pixel; if not specified, an appropriate value will be estimated from the source size
- grid_radius_arcsec – (optional) the size of the ray tracing region in arcsec; if not specified, an appropriate value will be estimated from the source size
- axis_ratio – the axis ratio of the ellipse used for ray tracing; if axis_ratio = 0, then the eigenvalues the hessian matrix will be used to estimate an appropriate axis ratio. Be warned: if the image is highly magnified it will tend to curve out of the resulting ellipse
- tol – tolerance for convergence in the magnification
- step_size – sets the increment for the successively larger ray tracing windows
- use_largest_eigenvalue – bool; if True, then the major axis of the ray tracing ellipse region will be aligned with the eigenvector corresponding to the largest eigenvalue of the hessian matrix
- source_light_model – the model for backgourn source light; currently implemented are ‘SINGLE_GAUSSIAN’ and ‘DOUBLE_GAUSSIAN’.
- dx – used with source model ‘DOUBLE_GAUSSIAN’, the offset of the second source light profile from the first [arcsec]
- dy – used with source model ‘DOUBLE_GAUSSIAN’, the offset of the second source light profile from the first [arcsec]
- size_scale – used with source model ‘DOUBLE_GAUSSIAN’, the size of the second source light profile relative to the first
- amp_scale – used with source model ‘DOUBLE_GAUSSIAN’, the peak brightness of the second source light profile relative to the first
- fixed_aperture_size – bool, if True the flux is computed inside a fixed aperture size with radius grid_radius_arcsec
Returns: an array of image magnifications
-
radial_tangential_differentials
(x, y, kwargs_lens, center_x=0, center_y=0, smoothing_3rd=0.001, smoothing_2nd=None)[source]¶ computes the differentials in stretches and directions
Parameters: - x – x-position
- y – y-position
- kwargs_lens – lens model keyword arguments
- center_x – x-coord of center towards which the rotation direction is defined
- center_y – x-coord of center towards which the rotation direction is defined
- smoothing_3rd – finite differential length of third order in units of angle
- smoothing_2nd – float or None, finite average differential scale of Hessian
Returns:
-
radial_tangential_stretch
(x, y, kwargs_lens, diff=None, ra_0=0, dec_0=0, coordinate_frame_definitions=False)[source]¶ computes the radial and tangential stretches at a given position
Parameters: - x – x-position
- y – y-position
- kwargs_lens – lens model keyword arguments
- diff – float or None, finite average differential scale
Returns: radial stretch, tangential stretch
-
tangential_average
(x, y, kwargs_lens, dr, smoothing=None, num_average=9)[source]¶ computes average tangential stretch around position (x, y) within dr in radial direction
Parameters: - x – x-position (float)
- y – y-position (float)
- kwargs_lens – lens model keyword argument list
- dr – averaging scale in radial direction
- smoothing – smoothing scale of derivative
- num_average – integer, number of points averaged over within dr in the radial direction
Returns:
-
zoom_source
(x_pos, y_pos, kwargs_lens, source_sigma=0.003, window_size=0.1, grid_number=100, shape='GAUSSIAN')[source]¶ computes the surface brightness on an image with a zoomed window
Parameters: - x_pos – angular coordinate of center of image
- y_pos – angular coordinate of center of image
- kwargs_lens – lens model parameter list
- source_sigma – source size (in angular units)
- window_size – window size in angular units
- grid_number – number of grid points per axis
- shape – string, shape of source, supports ‘GAUSSIAN’ and ‘TORUS
Returns: 2d numpy array
-
lenstronomy.LensModel.lens_param module¶
-
class
lenstronomy.LensModel.lens_param.
LensParam
(lens_model_list, kwargs_fixed, kwargs_lower=None, kwargs_upper=None, kwargs_logsampling=None, num_images=0, solver_type='NONE', num_shapelet_lens=0)[source]¶ Bases:
object
class to handle the lens model parameter
-
get_params
(args, i)[source]¶ Parameters: - args – tuple of individual floats of sampling argument
- i – integer, index at the beginning of the tuple for read out to keyword argument convention
Returns: kwargs_list, index at the end of read out of this model component
-
lenstronomy.LensModel.profile_integrals module¶
-
class
lenstronomy.LensModel.profile_integrals.
ProfileIntegrals
(profile_class)[source]¶ Bases:
object
class to perform integrals of spherical profiles to compute: - projected densities - enclosed densities - projected enclosed densities
-
density_2d
(r, kwargs_profile, lens_param=False)[source]¶ computes the projected density along the line-of-sight :param r: radius (arcsec) :param kwargs_profile: keyword argument list with lens model parameters :param lens_param: boolean, if True uses the lens model parameterization in computing the 3d density convention and the return is the convergence :return: 2d projected density at projected radius r
-
mass_enclosed_2d
(r, kwargs_profile)[source]¶ computes the mass enclosed the projected line-of-sight :param r: radius (arcsec) :param kwargs_profile: keyword argument list with lens model parameters :return: projected mass enclosed radius r
-
mass_enclosed_3d
(r, kwargs_profile, lens_param=False)[source]¶ computes the mass enclosed within a sphere of radius r
Parameters: - r – radius (arcsec)
- kwargs_profile – keyword argument list with lens model parameters
- lens_param – boolean, if True uses the lens model parameterization in computing the 3d density convention and the return is the convergence
Returns: 3d mass enclosed of r
-
lenstronomy.LensModel.profile_list_base module¶
-
class
lenstronomy.LensModel.profile_list_base.
ProfileListBase
(lens_model_list, numerical_alpha_class=None, lens_redshift_list=None, z_source_convention=None, kwargs_interp=None)[source]¶ Bases:
object
class that manages the list of lens model class instances. This class is applicable for single plane and multi plane lensing
lenstronomy.LensModel.single_plane module¶
-
class
lenstronomy.LensModel.single_plane.
SinglePlane
(lens_model_list, numerical_alpha_class=None, lens_redshift_list=None, z_source_convention=None, kwargs_interp=None)[source]¶ Bases:
lenstronomy.LensModel.profile_list_base.ProfileListBase
class to handle an arbitrary list of lens models in a single lensing plane
-
alpha
(x, y, kwargs, k=None)[source]¶ deflection angles :param x: x-position (preferentially arcsec) :type x: numpy array :param y: y-position (preferentially arcsec) :type y: numpy array :param kwargs: list of keyword arguments of lens model parameters matching the lens model classes :param k: only evaluate the k-th lens model :return: deflection angles in units of arcsec
-
density
(r, kwargs, bool_list=None)[source]¶ 3d mass density at radius r The integral in the LOS projection of this quantity results in the convergence quantity.
Parameters: - r – radius (in angular units)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- bool_list – list of bools that are part of the output
Returns: mass density at radius r (in angular units, modulo epsilon_crit)
-
fermat_potential
(x_image, y_image, kwargs_lens, x_source=None, y_source=None, k=None)[source]¶ fermat potential (negative sign means earlier arrival time)
Parameters: - x_image – image position
- y_image – image position
- x_source – source position
- y_source – source position
- kwargs_lens – list of keyword arguments of lens model parameters matching the lens model classes
Returns: fermat potential in arcsec**2 without geometry term (second part of Eqn 1 in Suyu et al. 2013) as a list
-
hessian
(x, y, kwargs, k=None)[source]¶ hessian matrix :param x: x-position (preferentially arcsec) :type x: numpy array :param y: y-position (preferentially arcsec) :type y: numpy array :param kwargs: list of keyword arguments of lens model parameters matching the lens model classes :param k: only evaluate the k-th lens model :return: f_xx, f_xy, f_yx, f_yy components
-
mass_2d
(r, kwargs, bool_list=None)[source]¶ computes the mass enclosed a projected (2d) radius r
Parameters: - r – radius (in angular units)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- bool_list – list of bools that are part of the output
Returns: projected mass (in angular units, modulo epsilon_crit)
-
mass_3d
(r, kwargs, bool_list=None)[source]¶ computes the mass within a 3d sphere of radius r
if you want to have physical units of kg, you need to multiply by this factor: const.arcsec ** 2 * self._cosmo.dd * self._cosmo.ds / self._cosmo.dds * const.Mpc * const.c ** 2 / (4 * np.pi * const.G) grav_pot = -const.G * mass_dim / (r * const.arcsec * self._cosmo.dd * const.Mpc)
Parameters: - r – radius (in angular units)
- kwargs – list of keyword arguments of lens model parameters matching the lens model classes
- bool_list – list of bools that are part of the output
Returns: mass (in angular units, modulo epsilon_crit)
-
potential
(x, y, kwargs, k=None)[source]¶ lensing potential :param x: x-position (preferentially arcsec) :type x: numpy array :param y: y-position (preferentially arcsec) :type y: numpy array :param kwargs: list of keyword arguments of lens model parameters matching the lens model classes :param k: only evaluate the k-th lens model :return: lensing potential in units of arcsec^2
-
ray_shooting
(x, y, kwargs, k=None)[source]¶ maps image to source position (inverse deflection) :param x: x-position (preferentially arcsec) :type x: numpy array :param y: y-position (preferentially arcsec) :type y: numpy array :param kwargs: list of keyword arguments of lens model parameters matching the lens model classes :param k: only evaluate the k-th lens model :return: source plane positions corresponding to (x, y) in the image plane
-


September 28th, 2016 15:17 GMT
New Libraries: Fiber, QVM Updated Libraries: Chrono, Circular Buffer, Container, Context, Coroutine2, DLL, Functional/Forward, Geometry, Interprocess, Intrusive, Lexical Cast, Log, Math, Phoenix, Regex, Test, Thread, TypeIndex, Unordered, Variant.
November 21st, 2016 12:09 GMT
Updated Libraries: Atomic, Fiber, Fusion, Hash, Log, Metaparse, Optional, Phoenix, Python, TypeIndex, Units, Unordered.


My List >
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction
-
Sacred Games18+ 1 SeasonForcefulFantacyAction


Click this button bellow to see the magic:
Show/Hide the photo
.
Note:
This is an event.
You want to see videos on YouTube?
Click me Youtube
Back to Topics links


---
sort_order: 71
tei_id: rdx_191dd.p.idp8722736
annotation_count: 0
images:
small-thumbnail: https://readux.ecds.emory.edu/books/emory:191dd/pages/emory:rffj6/mini-thumbnail/
json: https://readux.ecds.emory.edu/books/emory:191dd/pages/emory:rffj6/info/
full: https://readux.ecds.emory.edu/books/emory:191dd/pages/emory:rffj6/fs/
page: https://readux.ecds.emory.edu/books/emory:191dd/pages/emory:rffj6/single-page/
thumbnail: https://readux.ecds.emory.edu/books/emory:191dd/pages/emory:rffj6/thumbnail/
title: Page 71
number: 71
---
{% raw %}A VINDICTIVE FATHER. 71{% endraw %}
{% raw %}without a word or a look toward her lover, hastUy left the{% endraw %}
{% raw %}apartment,{% endraw %}
{% raw %}AUen restrained the impulse which he felt to follow her,{% endraw %}
{% raw %}and seated himself with the determination of making an{% endraw %}
{% raw %}.appeal to the reason, feeling and interests of the man before{% endraw %}
{% raw %}him. But ft was iu vain he talked of youthful hopes and{% endraw %}
{% raw %}affections crushed; of the shame of putting a pure young giri{% endraw %}
{% raw %}in the power of a man like the trader; of the indignation his{% endraw %}
{% raw %}(Newcome's) enemies might excite against him on account of{% endraw %}
{% raw %}it; of the grief of the child at being parted from all her{% endraw %}
{% raw %}friends; even of his own disposition to drop all attempts to{% endraw %}
{% raw %}befriend him in his precarious position.{% endraw %}
{% raw %}He might as well have talked to Lot's wife, as she exists{% endraw %}
{% raw %}at the present day. The man made no arguments nor{% endraw %}
{% raw %}defense; he merely gave an unequivocal refusal to all{% endraw %}
{% raw %}propositions to revoke the purpose he held toward his{% endraw %}
{% raw %}daughter, neither showing anger nor fear, but a sullen{% endraw %}
{% raw %}■vindietiveness. The young man at last sat silent, iu wonder,{% endraw %}
{% raw %}indignation and despair.{% endraw %}
{% raw %}" Mr. Newcome," said Alien, at last, " something which{% endraw %}
{% raw %}I happen to know may perhaps change your determination.{% endraw %}
{% raw %}Your daughter's relatives on her mother's side have been{% endraw %}
{% raw %}making endeavors to find her out."{% endraw %}
{% raw %}The lightning glance which Newxome cast at the young{% endraw %}
{% raw %}aiau showed that at least his apathy was broken.{% endraw %}
{% raw %}" If you knew that they were likely to give her their{% endraw %}
{% raw %}protection, would you not prefer that she should receive it{% endraw %}
{% raw %}before that of Mr. Mauvais ?"{% endraw %}
{% raw %}" No!" shouted the man, with a terrific oath, " I would{% endraw %}
{% raw %}see Mauvais take her to heU first 1"{% endraw %}


Gateway
BOT
22-Nov-18 08:30 PM
[dscrd-hush] <Takoy_Nahal> @dukeleto one minute 192-96-48-24-12?
[dscrd-hush] <Takoy_Nahal> 25 years
(edited)
[dscrd-hush] <dukeleto> @Takoy_Nahal so you are proposing that BTCH block rewards start at 192 and halve from there? How often?
[dscrd-hush] <dukeleto> we are not going to change 1 minute blocktime, that will stay the same. And stay on-demand, i.e. there are only blocks if there are transactions
In this roundup of latest cryptocurrency mining related news we feature a few unfortunate examples from around the world for the knock-on effect that the current bear market is having on the larger industry and its main hardware suppliers.
[dscrd-hush] <Takoy_Nahal> @dukeleto Like Verus - one month, then after 1-3 years a block reduction to 6 coins
[dscrd-hush] <dukeleto> @Takoy_Nahal ok. One thing to note tho, is those big initial blocks of VRSC were timelocked, and we are not going to do timelock stuff
[dscrd-hush] <dukeleto> it's a really interesting concept, and better fit for the beginning of a coin
[dscrd-hush] <Takoy_Nahal> @jl777c Vertcoin (lyra2rev), Monero and all of its fork, a different opinion) There is talk that Zcash is going to change the algorithm, DGB is going to introduce a new algorithm that will change every 10 days, not everyone wants ASICS)
[dscrd-hush] <dukeleto> I don't think it fits with a coin that already exists and is adding mining, like BTCH
[dscrd-hush] <dukeleto> @Takoy_Nahal you speak of "harmony mining" in ZEC: https://github.com/zcash/zcash/issues/3672
From Announcing Zcash Blossom and proposed feature goals: Harmony Mining What is it? A dual-proof-of-work scheme, where one algorithm is backwards compatible with current mining equipment, and anot...
[dscrd-hush] <Takoy_Nahal> @dukeleto Then I think with as many as HUSH 12-15 coins, then every 2-3 years the reduction of the block
[dscrd-hush] <dukeleto> that won't come until at least the next hardfork, the so called "Blossom"
[dscrd-hush] <dukeleto> @Takoy_Nahal we are talking about BTCH tho, right?
[dscrd-hush] <Takoy_Nahal> yes
[dscrd-hush] <Takoy_Nahal> Yes blossom, But maybe I have the wrong information)
[dscrd-hush] <Takoy_Nahal> With such a course cryptocurrency is not profitable to use even ASIC)
[dscrd-hush] <Takoy_Nahal> @dukeleto Yes we talk about BTCH, A small block ensures that there will not be big sales
(edited)
[dscrd-hush] <dukeleto> @Takoy_Nahal so are you suggesting 1 month at 192 blocks, 1 month at 96 blocks, etc... ? We need to decide the amount of time for each "era" and make sure it does not emit too much
[dscrd-hush] <Takoy_Nahal> @dukeleto Not more than one month. The first 192 no more than 2 weeks. In my opinion, Verus did it brilliantly and perfectly.
[dscrd-hush] <Takoy_Nahal> You can improve this by adding your own feature, so as not to be called a plagiarist))
[dscrd-hush] <Takoy_Nahal> It's my opinion


Source of Rebelo\SaftPT_4_PHP
This project consists of 16 directories, containing a total of 110 files.
- Source
- Rebelo
- SaftPt
- AuditFile
- SourceDocuments
- Payments
| Name | Size | Last Modified |
|---|---|---|
| DocumentStatus.php | 17.5 KB | 2020-12-19T16:24:49+00:00 |
| DocumentTotals.php | 7.0 KB | 2020-12-19T16:24:46+00:00 |
| Line.php | 9.4 KB | 2020-12-19T16:24:50+00:00 |
| Payment.php | 47.6 KB | 2020-12-19T16:24:44+00:00 |
| PaymentStatus.php | 2.8 KB | 2020-12-19T16:24:47+00:00 |
| PaymentType.php | 2.7 KB | 2020-12-19T16:24:43+00:00 |
| Payments.php | 15.3 KB | 2020-12-19T16:24:48+00:00 |
| SourceDocumentID.php | 11.9 KB | 2020-12-19T16:24:46+00:00 |
| SourcePayment.php | 2.2 KB | 2020-12-19T16:24:45+00:00 |
| Total: 9 files |


--- layout: post title: My Networks and Publish Platforms date: 2012-02-29 04:29:23.000000000 -08:00 type: post published: true status: publish categories: ---
You might know me from just Twitter or just from Facebook, you may have no idea in what other networks I'm part of, and that I didn't even remember I was part of. Here is a list of where you could find me.
Twitter: @omar12
Facebook: https://www.facebook.com/omartinez
Last.fm: Omar12
Linkedin: http://www.linkedin.com/in/omartinez12
Pinterest: Omar12
The Fancy: Omar12
Soundcloud: Omar12
Delicious: ommorpheus
Quora: http://www.quora.com/Omar-Martinez
Reddit: omar12
Google+
Foursquare
IMGame: Omar12
AskOmar.com started as an inside joke within friends, when in conversations, I would know a little bit of everything and drop knowledge about any subject, a friend of mine called Patricia suggested that I should have a AskOmar website that people would submit questions. The idea was hilarious, so I bought the domain and the first version of it was a question field that would send me an email.. I only got 2 questions... from Patricia. After the slight failure, I evolved into a blog. After a few posts and lack of consistency in posting, I started uploading my mixes and using AskOmar to publish them:
Tumblogs are quick and easy to get them running. I usually get a topic in mind to talk about and create a Tumblr blog about it.
Rumors On The Internets
A Clockwork Homage
Tune That I Like Today
There Is A Tumblr For Everything
Where is The Hoverboard
Note that not all of my Tumblrs are here.


Mina Cheon
Bio
Mina Cheon (천민정 PhD, MFA) is a Korean-American new media artist, scholar, and educator who
divides her time between Seoul, South Korea, Baltimore, and New York. Cheon has exhibited her political
pop art known as “Polipop” internationally. Polipop draws inspiration from global media and popular
culture and makes work that intersects politics and pop in subversive and provocative ways. In particular,
the artwork focuses on geopolitical and contested spaces and political pop icons while responding to Asia’s
relationship with the Western world in global media culture. The work is expressed in diverse mediums
such as new media, video, installation, and performance as well as traditional media such as paintings and
sculptural objects. Assuming different artistic pseudonyms during the past twenty years such as
Minaliza1000 and M-1000, Cheon’s latest avatar and alter ego is Kim Il Soon, a North Korean artistic
persona who is a social realist painter. Cheon has worked on the theme of North Korea, with emphasis on
North Korean women since 2004 when she visited the mystical Kumkangsan Mountain and has continued
to produce what she calls DPRK Polipop for considering Korean unification and global peace.
Solo exhibition includes: “Happy North Korean Children” at Trunk Gallery, Seoul (2014), “Choco·Pie
Propaganda” at Ethan Cohen New York Gallery, NY (2014), “Polipop and Paintings” at Maryland Art
Place, Contemporary Art Center, Baltimore (2012), “Polipop: Political Pop Art” at Sungkok Art Museum,
Seoul (2012), “Addressing Dolls” at C. Grimaldis Gallery, Baltimore (2008), “Dizz/placement” at Insa Art
Space, Art Council, Seoul (2005), and “Groundless” at Lance Fung Gallery, New York (2002). Group
exhibition includes showing at the American University Museum at the Katzen Arts Center, DC (2014),
the Seoul Olympic Museum of Art, Seoul (2013), St. Mary’s College Boyden Gallery, MD (2013), KoreanAmerican
NY Film Festival at Sylvia Wald and Po Kim Art Gallery, NY (2013), The Korus House of The
Korean Embassy, DC (2010), Art in Embassies Exhibition at the United States Embassy of Korea, Seoul
(since 2009), Kaohsiung Museum of Art, Taiwan (2003), and Fine Arts Center of Korean Culture and Arts
Foundation, Seoul (2000). Cheon’s work is in the permanent collection and/or archive of the Smith College
Museum of Art (MA), Sungkok Art Museum (Seoul), Maryland Art Place (Baltimore), Hirshhorn
Museum Video Collection (DC), SSamzie Art Collection (Paju), and EVR e-flux video rental at Museum
of Modern Art (Ljubljana).
As an educator, Cheon is a full-time professor at the Maryland Institute College of Art (MICA) and was
awarded the 2010 Martin Luther King, Jr. Day and Unity Week Award at MICA for her efforts promoting
cultural diversity within and beyond MICA. She currently teaches a range of courses in foundation,
electronic media, and liberal arts and for the past decade taught other various courses in graphic design,
interactive media, art history, and cultural theory as well as directing international educational programs
such as founding of the program MICA KOREA in 2004. Cheon received her PhD in Philosophy of Media
and Communications from the European Graduate School, European University for Interdisciplinary
Studies, Switzerland, and published her book Shamanism + Cyberspace (Atropos Press, NY and Dresden,
2009) that was adapted from her dissertation. Her recent publication includes “The Konglish Critique” in
Beyond Critique (Maisonneuve Press, MD, 2013) and she has been a writer for art magazines and journals
such as ArtUS (LA), NY Arts Magazine (NY), and Wolgan Misool monthly art magazine (Seoul). Cheon is a
correspondent and board member of Artist Organized Art (NY), board member of New Media Caucus, an
affiliate society of the College Art Association (USA), and associate editor of its academic journal Media-N.
Cheon has two MFA degrees, one in painting from the Hoffberger School of Painting (1999), MICA and
another MFA in Imaging Digital Arts from the University of Maryland, Baltimore County (2002). Her
BFA is in painting from Ewha Womans University, Seoul, Korea (1996), where she was a visiting professor
in 2011 and lecturer since 2010.
Recently awarded a significant art commission from the Mayor’s Office and the Baltimore Office of
Promotion & the Arts, Cheon with architect Gabriel Kroiz will install “Diamonds Light Baltimore,” for
Light City Baltimore, the first large scaled outdoor light festival for art, innovation, and technology this
spring 2016. Together they have taught and worked on art and design projects in Baltimore and Seoul,
Korea for over a decade.
http://www.minacheon.com/


UblDocumentBuilderXRechnung
class UblDocumentBuilderXRechnung extends UblDocumentBuilderBase
Class representing the ubl invoice builder for XRechnung
Methods
This method can be overwritten in derived classes, e.g. for setting up the customization and the profile of the ubl document
Sets the invoice type code
Sets the invoice number
Sets the invoice note
Sets the document currencies
Sets the buyers accounting reference
Sets the buyer reference
Sets the delivery or invoice period
Sets the buyer order reference number
Sets the seller order reference number
Sets an invoice document reference number and optionally ab issue date for this
Sets a despatch advice reference
Sets a receiving advice reference
Sets a tender or lot reference
Sets the contract reference
Removes all additional supporting documents
Add an additional supporting document
Adds an attachment to the last added additional document reference. You have to call addDocumentAdditionalReference before using this method
Sets a Project reference
Adds an attachment with an external uri to the last added additional document reference. You have to call addDocumentAdditionalReference before using this method
Initialize the seller party of the invoice document
Sets the seller electronic address
Sets seller identifier or bank assigned creditor identifier
Sets the seller trading name
Sets the postal address of the seller
Sets the sellers VAT identifier
Sets the sellers tax registration number
Sets the sellers legal entity
Sets the sellers contact
Initialize the buyer party of the invoice document
Sets the buyer electronic address
Sets buyer identifier
Sets the buyer trading name
Sets the postal address of the buyer
Sets the buyers VAT identifier
Sets the buyers legal entity
Sets the buyers contact
Initialize the payee party of the invoice document
Sets payee identifier
Sets the payee name
Sets the payees legal entity
Initialize the payee party of the invoice document
Sets the seller tax representative name
Sets the postal address for the tax representative party
Sets the tax representative VAT identifier
Initialize the delivery party and delivery location of the invoice document
Sets the date on which the supply of goods or services was made or completed.
Sets the deliver to location identifier
Sets the deliver-to address
Sets the information about the deliver party
Sets the document payment means to SEPA Credit Transfer
Sets the document payment means to SEPA Direct Debit
Sets the document payment means to Payment card
Set the document payment terms as textual description
Set the document payment terms as described in https://projekte.kosit.org/xrechnung/xrechnung/-/issues/6
Initializes a new Allowance/Charge information on document level
Removes all allowcance/charge information on document level
Sets the document level allowance or charge amounts Before calling this method you need to call initDocumentAllowanceCharge method
Sets the document level allowance or charge tax information
Initializes a new tax information on document level
Initializes a new tax information on document level for the foreign currency (currency different to invoice currency)
Initializes a new vat breakdown by different categories, rates and exemption reasons
Removes the tax information from document completly
Sets tax amounts on document level.
Sets tax category and scheme on document level.
Sets the tax amount for the foreign currency
Set the document summation basic/required information
Set the document complete summation information
Initializes a new invoice line
Set note on the latest created document position.
Set the invoiced quantity in the latest created document position Note: You have to call addNewDocumentPosition before you can use this method
Sets the invoice line net amount Note: You have to call addNewDocumentPosition before you can use this method
Sets the delivery or invoice period Note: You have to call addNewDocumentPosition before you can use this method
Sets the referenced purchase order line reference Note: You have to call addNewDocumentPosition before you can use this method
Set invoice line object identifier Note: You have to call addNewDocumentPosition before you can use this method
Initializes a new Allowance/Charge information on position level Note: You have to call addNewDocumentPosition before you can use this method
Sets the document position level allowance or charge amounts Note: You have to call addNewDocumentPosition before you can use this method Note: You have to call initDocumentPositionAllowanceCharge before you can use this method
Sets the position item information Note: You have to call addNewDocumentPosition before you can use this method
Sets the position item classification identifier(s)
Set document position vat information
Adds additional item properties to the document position
Sets the document position price information
Details
at line 139
protected UblDocumentBuilderBase
onInitInvoiceObject()
This method can be overwritten in derived classes, e.g. for setting up the customization and the profile of the ubl document
at line 153
UblDocumentBuilderBase
setDocumentType(string $documentTypeCode)
Sets the invoice type code
at line 169
UblDocumentBuilderXRechnung
setDocumentNumber(string $documentNo)
Sets the invoice number
at line 182
UblDocumentBuilderXRechnung
setDocumentDate(DateTime $documentDate)
Sets the invoice issue date
at line 196
UblDocumentBuilderXRechnung
setDocumentDueDate(DateTime $documentDueDate)
Sets the payment due date
at line 211
UblDocumentBuilderXRechnung
setDocumentTaxPointDate(DateTime $taxPointDate)
Sets the Value added tax point date
at line 225
UblDocumentBuilderXRechnung
setDocumentNote(string $documentNote)
Sets the invoice note
at line 244
UblDocumentBuilderXRechnung
setDocumentCurrencies(string $documentCurrency, string|null $taxCurrency = null)
Sets the document currencies
at line 263
UblDocumentBuilderXRechnung
setDocumentAccountingCost(string $accountingCost)
Sets the buyers accounting reference
at line 277
UblDocumentBuilderXRechnung
setDocumentBuyerReference(string $buyerReference)
Sets the buyer reference
at line 292
UblDocumentBuilderXRechnung
setDocumentInvoicePeriod(DateTime|null $startDate = null, DateTime|null $endDate = null)
Sets the delivery or invoice period
at line 318
UblDocumentBuilderXRechnung
setDocumentBuyerOrderNo(string $buyerOrderNo)
Sets the buyer order reference number
at line 333
UblDocumentBuilderXRechnung
setDocumentSellerOrderNo(string $sellerOrderNo)
Sets the seller order reference number
at line 351
UblDocumentBuilderXRechnung
addDocumentBillingReference(string $referenceNo, DateTime|null $issueDate = null)
Sets an invoice document reference number and optionally ab issue date for this
at line 375
UblDocumentBuilderXRechnung
setDocumentDespatchReference(string $referenceNo)
Sets a despatch advice reference
at line 392
UblDocumentBuilderXRechnung
setDocumentReceiptReference(string $referenceNo)
Sets a receiving advice reference
at line 409
UblDocumentBuilderXRechnung
setDocumentOriginatorReference(string $referenceNo)
Sets a tender or lot reference
at line 426
UblDocumentBuilderXRechnung
setDocumentContractReference(string $referenceNo)
Sets the contract reference
at line 441
UblDocumentBuilderXRechnung
clearDocumentAdditionalReference()
Removes all additional supporting documents
at line 462
UblDocumentBuilderXRechnung
addDocumentAdditionalReference(string $referenceNo, string $referenceScheme = "", string $documentTypeCode = "", string $documentDescription = "")
Add an additional supporting document
at line 490
UblDocumentBuilderXRechnung
setFileAttachmentToAdditionalReference(string $filenameToAttach)
Adds an attachment to the last added additional document reference. You have to call addDocumentAdditionalReference before using this method
at line 528
UblDocumentBuilderXRechnung
setDocumentProjectReference(string $referenceNo)
Sets a Project reference
at line 548
UblDocumentBuilderXRechnung
setExternalAttachmentToAdditionalReference(string $uriId)
Adds an attachment with an external uri to the last added additional document reference. You have to call addDocumentAdditionalReference before using this method
at line 576
UblDocumentBuilderXRechnung
initDocumentSeller()
Initialize the seller party of the invoice document
at line 598
UblDocumentBuilderXRechnung
setDocumentSellerEndpointId(string $endpointId, string $endpointSchemeId)
Sets the seller electronic address
at line 630
UblDocumentBuilderXRechnung
addDocumentSellerIdentification(string $id, string $idSchemeid = "")
Sets seller identifier or bank assigned creditor identifier
at line 658
UblDocumentBuilderXRechnung
setDocumentSellerName(string $name)
Sets the seller trading name
at line 702
UblDocumentBuilderXRechnung
setDocumentSellerPostalAddress(string $streetName1, string $streetName2, string $streetName3, string $cityName, string $cityPostCode, string $countyName, string $countryId)
Sets the postal address of the seller
at line 749
UblDocumentBuilderXRechnung
setDocumentSellerVATIdentifier(string $vatIdentifier)
Sets the sellers VAT identifier
at line 785
UblDocumentBuilderXRechnung
setDocumentSellerTaxRegistration(string $taxRegistration)
Sets the sellers tax registration number
at line 829
UblDocumentBuilderXRechnung
setDocumentSellerLegalEntity(string $registrationName, string $companyId = "", string $companyIdSchemeId = "")
Sets the sellers legal entity
at line 868
UblDocumentBuilderXRechnung
setDocumentSellerContact(string $contactName, string $contactPhone, string $contactElectronicMail)
Sets the sellers contact
at line 889
UblDocumentBuilderXRechnung
initDocumentBuyer()
Initialize the buyer party of the invoice document
at line 910
UblDocumentBuilderXRechnung
setDocumentBuyerEndpointId(string $endpointId, string $endpointSchemeId)
Sets the buyer electronic address
at line 939
UblDocumentBuilderXRechnung
addDocumentBuyerIdentification(string $id, string $idSchemeid = "")
Sets buyer identifier
at line 968
UblDocumentBuilderXRechnung
setDocumentBuyerName(string $name)
Sets the buyer trading name
at line 1012
UblDocumentBuilderXRechnung
setDocumentBuyerPostalAddress(string $streetName1, string $streetName2, string $streetName3, string $cityName, string $cityPostCode, string $countyName, string $countryId)
Sets the postal address of the buyer
at line 1059
UblDocumentBuilderXRechnung
setDocumentBuyerVATIdentifier(string $vatIdentifier)
Sets the buyers VAT identifier
at line 1100
UblDocumentBuilderXRechnung
setDocumentBuyerLegalEntity(string $registrationName, string $companyId = "", string $companyIdSchemeId = "")
Sets the buyers legal entity
at line 1139
UblDocumentBuilderXRechnung
setDocumentBuyerContact(string $contactName, string $contactPhone, string $contactElectronicMail)
Sets the buyers contact
at line 1160
UblDocumentBuilderXRechnung
initDocumentPayee()
Initialize the payee party of the invoice document
at line 1183
UblDocumentBuilderXRechnung
addDocumentPayeeIdentification(string $id, string $idSchemeid = "")
Sets payee identifier
at line 1213
UblDocumentBuilderXRechnung
setDocumentPayeeName(string $name)
Sets the payee name
at line 1245
UblDocumentBuilderXRechnung
setDocumentPayeeLegalEntity(string $registrationName, string $companyId = "", string $companyIdSchemeId = "")
Sets the payees legal entity
at line 1275
UblDocumentBuilderXRechnung
initDocumentTaxRepresentative()
Initialize the payee party of the invoice document
at line 1292
UblDocumentBuilderXRechnung
setDocumentTaxRepresentativeName(string $name)
Sets the seller tax representative name
at line 1335
UblDocumentBuilderXRechnung
setDocumentTaxRepresentativePostalAddress(string $streetName1, string $streetName2, string $streetName3, string $cityName, string $cityPostCode, string $countyName, string $countryId)
Sets the postal address for the tax representative party
at line 1382
UblDocumentBuilderXRechnung
setDocumentTaxRepresentativeVATIdentifier(string $vatIdentifier)
Sets the tax representative VAT identifier
at line 1414
UblDocumentBuilderXRechnung
initDelivery()
Initialize the delivery party and delivery location of the invoice document
at line 1435
UblDocumentBuilderXRechnung
setDocumentDeliveryDate(DateTime $deliveryDate)
Sets the date on which the supply of goods or services was made or completed.
at line 1457
UblDocumentBuilderXRechnung
setDocumentDeliveryIdentification(string $id, string $idSchemeid = "")
Sets the deliver to location identifier
at line 1505
UblDocumentBuilderXRechnung
setDocumentDeliveryPostalAddress(string $streetName1, string $streetName2, string $streetName3, string $cityName, string $cityPostCode, string $countyName, string $countryId)
Sets the deliver-to address
at line 1552
UblDocumentBuilderXRechnung
setDocumentDeliveryName(string $name)
Sets the information about the deliver party
at line 1591
UblDocumentBuilderXRechnung
setDocumentPaymentMeansToCreditTransfer(string $payeeAccountId, string $paymentId = "", string $payeeAccountName = "", string $payeeAccountBranch = "")
Sets the document payment means to SEPA Credit Transfer
at line 1635
UblDocumentBuilderXRechnung
setDocumentPaymentMeansToDirectDebit(string $mandateReference, string $payerAccountId)
Sets the document payment means to SEPA Direct Debit
at line 1672
UblDocumentBuilderXRechnung
setDocumentPaymentMeansToPaymentCard(string $cardId, string $networkId, string $cardHolderName = "")
Sets the document payment means to Payment card
at line 1707
UblDocumentBuilderXRechnung
setDocumentPaymentTerms(string $note)
Set the document payment terms as textual description
at line 1729
UblDocumentBuilderXRechnung
setDocumentPaymentTermsExt(float $paymentDiscountBaseAmount, int $paymentDiscountDays, float $paymentDiscountPercent)
Set the document payment terms as described in https://projekte.kosit.org/xrechnung/xrechnung/-/issues/6
at line 1769
UblDocumentBuilderXRechnung
initDocumentAllowanceCharge(bool $isCharge, string $reason, string $reasonCode)
Initializes a new Allowance/Charge information on document level
at line 1792
UblDocumentBuilderXRechnung
clearDocumentAllowanceCharge()
Removes all allowcance/charge information on document level
at line 1813
UblDocumentBuilderXRechnung
setDocumentAllowanceChargeAmounts(float $amount, float|null $baseAmount = null)
Sets the document level allowance or charge amounts Before calling this method you need to call initDocumentAllowanceCharge method
at line 1845
UblDocumentBuilderXRechnung
setDocumentAllowanceChargeTax(string $taxCategoryCode, string $taxSchemeCode = "", float|null $percent = null)
Sets the document level allowance or charge tax information
at line 1875
UblDocumentBuilderXRechnung
initDocumentTaxTotal()
Initializes a new tax information on document level
at line 1894
UblDocumentBuilderXRechnung
initDocumentTaxTotalFCY()
Initializes a new tax information on document level for the foreign currency (currency different to invoice currency)
at line 1916
UblDocumentBuilderXRechnung
initDocumentTaxSubTotal()
Initializes a new vat breakdown by different categories, rates and exemption reasons
at line 1933
UblDocumentBuilderXRechnung
clearDocumentTaxTotal()
Removes the tax information from document completly
at line 1953
UblDocumentBuilderXRechnung
setDocumentTaxAmounts(float $taxableAmount, float $taxAmount)
Sets tax amounts on document level.
Before calling this method you need to call initDocumentTaxTotal and initDocumentTaxSubTotal
at line 1985
UblDocumentBuilderXRechnung
setDocumentTaxScheme(string $taxCategoryCode, string $taxSchemeCode = "", float|null $percent = null)
Sets tax category and scheme on document level.
Before calling this method you need to call initDocumentTaxTotal and initDocumentTaxSubTotal
at line 2024
UblDocumentBuilderXRechnung
setDocumentTaxAmountFCY(float $taxAmount)
Sets the tax amount for the foreign currency
at line 2053
UblDocumentBuilderXRechnung
setDocumentSummation(float $lineExtensionAmount, float $taxExclusiveAmount, float $taxInclusiveAmount, float $payableAmount)
Set the document summation basic/required information
at line 2093
UblDocumentBuilderXRechnung
setDocumentSummationEnhanced(float $lineExtensionAmount, float $taxExclusiveAmount, float $taxInclusiveAmount, float $payableAmount, float $allowanceTotalAmount, float $chargeTotalAmount, float $prepaidAmount)
Set the document complete summation information
at line 2118
UblDocumentBuilderXRechnung
addNewDocumentPosition(string $lineId)
Initializes a new invoice line
at line 2137
UblDocumentBuilderXRechnung
setDocumentPositionNote(string $note)
Set note on the latest created document position.
Note: You have to call addNewDocumentPosition before you can use this method
at line 2169
UblDocumentBuilderXRechnung
setDocumentPositionQuantity(float $quantity, string $unitCode)
Set the invoiced quantity in the latest created document position Note: You have to call addNewDocumentPosition before you can use this method
at line 2199
UblDocumentBuilderXRechnung
setDocumentPositionTotalAmount(float $totalAmount)
Sets the invoice line net amount Note: You have to call addNewDocumentPosition before you can use this method
at line 2228
UblDocumentBuilderXRechnung
setDocumentPositionInvoicePeriod(DateTime|null $startDate = null, DateTime|null $endDate = null)
Sets the delivery or invoice period Note: You have to call addNewDocumentPosition before you can use this method
at line 2264
UblDocumentBuilderXRechnung
setDocumentPositionBuyerOrderLineNo(string $orderLineReferenceNo)
Sets the referenced purchase order line reference Note: You have to call addNewDocumentPosition before you can use this method
at line 2296
UblDocumentBuilderXRechnung
setDocumentPositionDocumentReference(string $id, string $idSchemeid, string $documentTypeCode = "130")
Set invoice line object identifier Note: You have to call addNewDocumentPosition before you can use this method
at line 2346
UblDocumentBuilderXRechnung
initDocumentPositionAllowanceCharge(bool $isCharge, string $reason, string $reasonCode)
Initializes a new Allowance/Charge information on position level Note: You have to call addNewDocumentPosition before you can use this method
at line 2386
UblDocumentBuilderXRechnung
setDocumentPositionAllowanceChargeAmounts(float $amount, float|null $baseAmount = null)
Sets the document position level allowance or charge amounts Note: You have to call addNewDocumentPosition before you can use this method Note: You have to call initDocumentPositionAllowanceCharge before you can use this method
at line 2437
UblDocumentBuilderXRechnung
setDocumentPositionItem(string $name, string $description = "", string $buyerId = "", string $sellerid = "", string $standardItemIdentification = "", string $standardItemIdentificationScheme = "")
Sets the position item information Note: You have to call addNewDocumentPosition before you can use this method
at line 2494
UblDocumentBuilderXRechnung
addDocumentPositionCommodityClassification(string $itemClassificationCode, string $listId, string $listVersionId = "")
Sets the position item classification identifier(s)
Note: You have to call addNewDocumentPosition before you can use this method
Note: You have to call setDocumentPositionItem before you can use this method
at line 2544
UblDocumentBuilderXRechnung
setDocumentPositionTaxScheme(string $taxCategoryCode, string $taxSchemeCode = "", float|null $percent = null)
Set document position vat information
Note: You have to call addNewDocumentPosition before you can use this method
Note: You have to call setDocumentPositionItem before you can use this method
at line 2590
UblDocumentBuilderXRechnung
addDocumentPositionItemProperty(string $name, string $value)
Adds additional item properties to the document position
Note: You have to call addNewDocumentPosition before you can use this method
Note: You have to call setDocumentPositionItem before you can use this method
at line 2642
UblDocumentBuilderXRechnung
setDocumentPositionPrice(float $priceAmount, float|null $baseQuantity = null, string|null $baseQuantityUnitCode = null)
Sets the document position price information
Note: You have to call addNewDocumentPosition before you can use this method


Each player rolls one die, with the highest roll going first. In the event of a tie, the players who tied for the highest roll roll again. Once the first player is decided, play continues to the left.
Before points can be counted for any player, they must first "get on the board" by rolling at least 500 points in a turn. A player cannot "farkle" until they are on the board. Some believe that it is "more fun" to push the number of points needed to get on the scoreboard to 750 or even 1000, so, keep that in mind, if you want to have "more fun".
To start a turn, roll all six dice. Set aside any dice that are worth points and roll the remaining dice. If you roll and no dice are worth any points, your turn is over. Continue rolling and setting aside scoring dice, adding the score to your total If all six dice are scoring dice, you may roll all six and add the subsequent points to your running total. Keep rolling until you feel you are pressing your luck and have the scorekeeper record your score.
If a die were to roll off the table or in some other awkward out of play kind of area, re-roll that die.
A player does not have to set aside all scoring dice in a roll, just at least one.
Let's say that a player feels don't want to push their luck and want to record their score and end their turn. This player has a few dice remaining to roll. If the next player is on the board, they can decide roll the remaining dice from the previous player. If they gain points in that roll, they can then add those points to the score the previous player ended on.
The first player to get 10,000 points wins only after each other player has a chance to beat their score in one last turn. If someone beats the original winner, each player has another chance to beat the new winner.


| < Day Day Up > |
7.1 Replication OverviewDatabase replication has an undeserved reputation for being complex to set up and prone to failure. The early versions of MySQL replication were difficult to configure because the process was inadequately documented. In its most basic form, replication consists of two servers: a master and a slave. The master records all queries that change data in its binary log. The slave connects to the master, reads queries from the master's binary log, and executes them against its local copy of the data. Before peering under the hood, let's look at the types of problems replication does and doesn't solve. If you're reading this in the hopes of deploying replication to cure a problem, this section may help you decide whether you're on the right track. 7.1.1 Problems Solved with ReplicationReplication isn't perfect, but it can be quite useful in solving several classes of problems in the areas of scalability and backups. <IP_ADDRESS> Data distributionNeed to maintain a copy of your data 10,000 miles away? Replication makes it trivial to do so. As long as you have decent connectivity between two sites, you can replicate a MySQL database. Think of this as scaling geographically. In fact, it's possible to use replication over a network connection that isn't "always on," such as traditional dial-up using PPP. You can simply let the slave fail and reconnect (it'll keep trying for a long time). Or you can use one of the SLAVE STOP commands (described later) to disable the slave's replication when no connection is available. The master doesn't mind if a slave disconnects for a few hours and then reconnects. But you can't let the slave go for too long without reconnecting to the master, because the older record of changes will eventually be purged to keep the master from running out of disk space. Of course, you can also use replication between two servers that sit next to each other. Any time you need multiple up-to-date copies of your MySQL data, replication is often the easiest solution. You can even replicate data between two MySQL servers on the same machine, which is often a good way to test a new version of MySQL without using a second machine. <IP_ADDRESS> Load balancingIf you use MySQL on a large data warehousing application or a popular web site, odds are that your server is running many more read queries (SELECT) than write queries (INSERT, UPDATE, and DELETE). If that's the case, replication is an excellent way to support basic load balancing. By having one or more slave servers, you can spread most of the work among several servers. The trick, of course, is coming up with an effective way to spread the queries among the available slaves so they get roughly equal workloads. One simple approach is to use round-robin DNS. Assign multiple IP addresses for a hostname such as db-slave.example.com, and your application will connect to one at random each time it opens a new connection to MySQL.[1]
A more sophisticated approach involves the same solutions that are used in web server load balancing. Network load-balancing products from Foundry Networks, Cisco, Nortel, and others work just as well for MySQL as they do for web sites.[2] The same is true of software solutions such as the Linux Virtual Server (LVS) project (http://www.linuxvirtualserver.org/).
Load-balancing techniques are covered in greater detail in Chapter 8. <IP_ADDRESS> Backup and recoveryBacking up a busy MySQL server can be difficult when your clients demand access to the data 24 hours a day. Rather than deal with the complexity of implementing a backup process that minimizes the impact on your clients, you might find it easier simply to configure a slave server and back it up instead. Because the slave will have an exact copy of the data, it's just as good as backing up the master. Plus you'll never impact the clients who are using the master. You might even decide that you don't necessarily need or want to back up the data as long as you have the "hot spare" slave database available in the case of problems with the master. Chapter 9 covers backup and recovery techniques in more detail. <IP_ADDRESS> High availability and failoverUsing replication, you can avoid making MySQL (or the system hosting it) a single point of failure in your applications. Although there's no out-of-the-box, automated failover solution for MySQL, you can achieve a good degree of high availability using some relatively simple techniques. Using a creative DNS setup, you can insulate your applications from having to know which server is the master and minimize the effort involved in switching to a slave when the master fails. Let's suppose you have two MySQL servers, db1.example.com and db2.example.com. Rather than hardcoding the name of the master in your applications, you can set up db.example.com as a CNAME (or alias) in DNS for your master. By using a very low Time To Live (TTL) on the DNS record, you can ensure that clients will not cache the information longer than necessary. In the event your master goes down, simply update your DNS to point db.example.com at the new master. As soon as the TTL expires, your applications will pick up the new information and connect to the proper server. There will be some time during which the applications can't contact MySQL, but that time will be relatively brief if you use a low enough TTL.[3]
If you'd like to eliminate entirely the need to use DNS, you can play similar games using IP addresses. Because it's trivial to add and remove additional IP addresses from a server, a scheme like this may serve you well:
See the "High Availability" section of Chapter 8 for more on the topic. 7.1.2 Problems Not Solved with ReplicationReplication doesn't solve every problem. Performance can become an issue with replication because every slave still needs to execute the same write queries as the master. In a very write-heavy application, slaves need to be at least as powerful as the master. If you attempt to use replication to set up a load-balancing system, you may be disappointed. It may be more productive to implement a partitioning system with multiple masters—one for each partition of the data. Also, there's no guarantee that a slave will be completely in sync with the master at any given moment. If the load on a slave is relatively high, the slave may fall behind and need time to catch up. Network bandwidth and latency can also become an issue. If the slave is far away from the master (in a network sense) and there isn't sufficient bandwidth, a slave may be able to keep up with the master's query load, but it won't be able to get data fast enough to do so. Let's look at two specific examples that illustrate problems not easily solved with replication. <IP_ADDRESS> Real-time data transmissionMySQL's replication isn't the ideal vehicle for transmitting real-time or nearly real-time data such as a stock quote feed or an online auction site. In those applications, it's important that the user sees up-to-date data no matter which database server they use. The only way to combat MySQL's lack of any latency guarantee is to implement your own monitoring system. It needs to use some sort of heartbeat to verify that each server has a reasonably up-to-date copy of the data. In the event that a server falls too far behind, the monitoring system needs to proactively remove it from the list of active servers until it can catch up. Of course, you can also build your application in such a way that it updates all the slaves with the newest data. However, that can add a lot of complexity and may not be worth the effort. You'd end up writing a lot of code to handle the exceptional conditions, such as when a single server falls behind or is intermittently inaccessible. Testing and debugging all those situations can be very time-consuming and difficult. As Derek went over this, he thought, "Wouldn't it be cool if MySQL could provide a query response that signified, `Go ask another server, I'm really busy right now'?" This would allow clients to automatically find willing servers in a multihost DNS rotation. For example, the client wants to connect to db.example.com (which is db1, db2, and db3). It connects (randomly) to db2, and the server answers the query with "I'm busy; go ask someone else," whereupon the client knows enough to try db1 or db3. Because the client library would be connecting to the same virtual server, it could transparently disconnect from the busy server and connect to some other (hopefully less busy) server.  Of course, this could also be subject to a cascading failure. If all the slaves are very busy, the last thing you'd want is for them to start removing themselves from the pool of available servers. Continue on to Chapter 8 for a deeper discussion of these issues. <IP_ADDRESS> Online orderingAn ordering system is different from a real-time stock quote feed or an auction site in a couple of important ways. First, the ratio of reads to writes is likely to be much lower. There isn't a constant stream of users running read-only queries against the data. Also, when users are running read queries, they're often part of a larger transaction, so you can't send those read queries to a slave. If you did, the slave might not have the correct data yet. Transactions aren't written to the binary log and therefore sent to slaves until they first commit on the master. A slave will contain only committed transactions. Replication can still be very useful for an order processing system. It's reasonable to use a slave for running nightly reports and queries that don't need the most recent data. 7.1.3 Replication PerformanceHaving considered the problems that replication does and doesn't solve, you may still be a bit unsure about using it. Maybe replication is fast enough to get the job done, despite the lack of any performance guarantees built into the system. Wouldn't it be nice to have a general idea of how fast replication really is? That's exactly what we wanted to know when we first began using replication—partly for our own sanity and partly because we knew a lot of people would soon be interested in MySQL replication. The first question they'd ask is, "How fast is it?" To answer that question, we devised the following simple test to measure the practical minimum replication latency in a particular environment. A Perl script opened two database connections, one to the master and one to the slave. The master and slave were on the same 100-Mbit switched Ethernet network. The script then inserted a record into the master and immediately attempt to retrieve it from the slave. If the record wasn't available, the script immediately retried. We kept the records intentionally small, containing just an auto-increment column and a VARCHAR field into which we inserted the current time. The results were encouraging. Of the 1,000 records inserted, 950 of them were available on the first attempt. That left 50 records that required at least a second try. Of those 50, 43 were available on the second attempt. The remaining 7 were there on the third try. The test was quick and very unscientific, but it can help to set realistic expectations. |
| < Day Day Up > |


Build your project reliably on EOSIO or Ethereum with dfuse — a massively scalable open-source platform for searching and processing blockchain data.


Note that the xmlns:pt="http://xmlns.jcp.org/jsf/passthrough" namespace is needed for pt:data-zoom-src to work.
xmlns:pt="http://xmlns.jcp.org/jsf/passthrough"
pt:data-zoom-src


Basic examples
Setting up the client
using Challonge;
class Program
{
static void Main(string[] args)
{
ChallongeClient client = new ChallongeClient("YOUR API KEY HERE");
}
}
Creating a tournament
Add the following using statement to the previous code:
using Challonge.Tournaments;
Now inside the Main
method, add the following lines:
// We set the properties of the tournament we want to create
TournamentBuilder builder = new TournamentBuilder { Name = "MyTournament" };
// We then create the tournament using the properties we previously set
client.Tournaments.CreateTournamentAsync(builder).ConfigureAwait(false);
Tip
The methods provided by theChallongeClient
are all async
.
You can take advantage of this by using the await
keyword before the method call.
More information about this is available here.
This will create a tournament named MyTournament on your Challonge! account.
You can further customize the created tournament using the
TournamentBuilder
's properties
or the optional parameters of the CreateTournamentAsync
method.
Let's update some of the tournament's properties.
Updating a tournament
First of all, we need to retrieve the tournament we previously created. Change the last line of the code you added in the previous step :
// Replace the last line of the previous step by this one
Tournament tournament = client.Tournaments.CreateTournamentAsync(builder).Result;
Now we can update the created tournament. Let's change its name, type, and give it a custom url:
Add the following lines to your code:
// We create a new builder based on the created tournament, and update its properties.
TournamentBuilder updater = new TournamentBuilder(tournament)
{ Name = "Updated tournament", Url = "new_url", TournamentType = TournamentType.DoubleElimination };
// Finally we update the tournament
client.Tournaments.UpdateTournamentAsync(tournament.Url, updater).ConfigureAwait(false);
Tip
As you can see, using the optional parameters results in fewer lines of code. However, we recommend using the TournamentBuilder instead, because it makes your easier to understand when using lots of parameters, and it might be more bug proof (both should have the same behaviour, but you never know).
Working with matches and participants
The Matches and the Participants api work the same way as described here. If you have some questions about anything related to Challonge.Net, please visit our discussions tab on GitHub.


publications
Publications by categories in reversed chronological order.
Articles
-
Learning on the Job: Long-Term Behavioural Adaptation in Human-Robot Interactions IEEE Robotics and Automation Letters 2022. (Accepted IEEE/RSJ IROS 2022, 🏅Finalist for Best Paper Award on Cognitive Robotics)
-
Are You Still With Me? Continuous Engagement Assessment From a Robot's Point of View Frontiers in Robotics and AI 7:116 2020 [Code]
-
Automatic Assessment and Learning of Robot Social Abilities HRI Pioneers Workshop, ACM/IEEE International Conference on Human-Robot Interaction 2020
-
Abstract Visual Programming of Social Robots for Novice Users Late Breaking Reports, ACM/IEEE International Conference on Human-Robot Interaction 2020
-
Lindsey the Tour Guide Robot-Usage Patterns in a Museum Long-Term Deployment IEEE International Conference on Robot & Human Interactive Communication (RO-MAN) 2019
-
Do Not Make the Same Mistakes Again and Again: Learning Local Recovery Policies for Navigation From Human Demonstrations IEEE Robotics and Automation Letters 2018. (Accepted IEEE/RSJ IROS 2018) [Code]
Theses
-
Del Duchetto, F. (2018). Learning by Demonstration of Local Recoveries and Opportunities. Sapienza Universita' di Roma, Italy.
-
Del Duchetto, F. (2015). Evoluzione artificiale di automi cellulari. Universita' di Bologna, Italy.


Former Massachusetts Gov. Deval Patrick announces presidential bid
by Ali Vitali and F. Brinley BrutonFormer Massachusetts Gov. Deval Patrickannounced Thursday that he will run for the Democratic nomination for president.
His decision to enter the primary comes against the backdrop of the realities of the political calendar — the filing deadline in all-important New Hampshire is Friday — as well as continued consternation from some Democrats about whether the current field presents viable options to beat President Donald Trump in 2020.
Patrick ruled out a presidential bid earlier this year, telling NBC10 at the time that he had concerns about the negativity of a campaign and the impact of that on his family.
His late entry presents big hurdles, both in fundraising and when it comes to building a campaign organization that can keep pace with other candidates who have been running for almost a year.
On his campaign websiteon Thursday morning, Patrick said, "This race is not just about the character of any one individual, but about the character of the country. This is our chance to reclaim the American Dream."
This is a developing story. Check back for updates.