Special pointsets
 For special pointsets over intervals, triangles (simplex), disk, square, and polygons, see the following url.
Recent codes
(last update: June 28, 2024)
Usage notes:
Matlab version of CPOLYMESH The Matlab package includes two demos, that we briefly comment.
 demo_cdes_1: by this routine we show
 how to define the complex domain (several ways),
 compute an admissible mesh (AM) of a fixed degree,
 extract extremal sets,
 compute a certified Lebesgue constant.
 demo_cdes_2: by this routine we perform all batteries of numerical tests that are described above.
In particular, varying the degrees, we
 compute an admissible mesh (AM) of a fixed degree;
 extract the AFP, DLP, PLP extremal sets;
 for each of them we compute a certified Lebesgue constant;
 plot Lebesgue contants, domain and extremal points.
Note: Changing the value of the variable domain_type, from 1 to 22, one can test our routines also on other complex geometries, as hypocycloids, epicycloids, epitrochoids, limacons, rhodoneas, eggs, bifoliums, Talbot curves, tricuspoids, torpedos, ellipses and heartshaped domain.
» Sources:
 Leokadia BialasCiez, Dimitri Jordan Kenne, Alvise Sommariva, Marco Vianello, Chebyshev admissible meshes and Lebesgue constants of complex polynomial projections.
 Dimitri J. Kenne, Alvise Sommariva and Marco Vianello, CPOLYMESH: Matlab and Python codes for complex polynomial approximation by Chebyshev admissible meshes
Codes: 
Last versions:
» MATLAB: CPOLYMESH at Github, CPOLYMESH (.zip file).  
Papers:
Presentations:
» Object: Nearalgebraic quadrature rules on spherical polygons..
The suite is subdivided in two folders, EASY and NUMERICAL_EXPERIMENTS.
In EASY there are two subfolders CUB and HYP in which we provide the codes for cubature and hyperinterpolation (respectively).
In CUB there is the demo demo_cub_sphpgon that shows how to use the main routine cub_sphpgon and a basic adaptive code adaptive_cub_sphpgon.
In HYP there is the demo demo_hyp_sphpgon that shows how to compute hyperinterpolants on spherical polygons.
In NUMERICAL_EXPERIMENTS there are three subfolders CUB01 and HYP01, HYP02 in which we provide the codes used for experiments about cubature and hyperinterpolation and its variants (respectively).
» Sources:
 Papers:
 Last version: [MATLAB CODES (zip file)]
Usage notes:
The main folder contains several subfolders that lead to the wanted domain. In particular we examine the Lebesgue constants for some interpolation sets in the
 interval,
 simplex,
 square,
 disk,
 cube,
 ball,
 square,
 disk.
 demo_basic.m that is a basic demo for understanding how the Lebesgue costant estimator lebconst_eval_*.m works;
 demo_leb_*.m makes all the experiments cited in the paper L. BialasCiez, D. Kenne, A. Sommariva and M. Vianello, Evaluating Lebesgue constants by Chebyshev polynomial meshes on cube, simplex and ball.
 The folder _DATA contains the plots of the papers, a file "numerical_experiments.txt" with the statistics of the experiments, and if it is useful, the files set_AFP_disk, set_DLP_disk containing respectively Approximate Fekete Points and Discrete Leja Points for mild degrees.
» Sources:
 Leokadia BialasCiez, Dimitri Jordan Kenne, Alvise Sommariva, Marco Vianello, Evaluating Lebesgue constants by Chebyshev polynomial meshes on cube, simplex and ball.

Last versions:
» MATLAB: LEBEVAL at Github, LEBEVAL (.zip file).  
Papers:
Codes:
Presentations:
Usage notes:
 The main Matlab code used in our numerical tests, can be found in the folder "General"
and is named "demo_scattcub_driver_01.m".
There You can change the domain, the algebraic degrees of exactness of the rule, cardinali
ty and type of the scattered data.
 For a simple usage of the algorithm, we have added the routine "demo_scattcub", where one can use one of the algorithms
to compute the wanted integrals. It makes comparisons with the algebraic rule used in the integral evaluation knowing the function evaluations at the nodes.
 IMPORTANT: The directory "EXTERNAL_ROUTINES" contains methods and cubature rules used in the paper.
» Sources:
 R. Cavoretto, F. Dell'Accio, A. De Rossi, F. Di Tommaso, N. Siar, A. Sommariva, and M. Vianello, Numerical cubature on scattered data by adaptive interpolation.

Last versions:
» MATLAB: SCATTCUB at Github, SCATTCUB (.zip file).  
Papers:
Codes:
Presentations:
 we provide hybrid hyperinterpolation on general regions, as interval, unitdisk, unitsphere, unitcube, union of disks, polygons,
» MATLAB: Hyper23.zip at Github, Hyper23.zip.
» Sources:
 Congpei An, JiaShu Ran, Alvise Sommariva, Hybrid hyperinterpolation over general regions, (submitted),

Last versions:
» MATLAB: Hyper23.zip at Github, Hyper23.zip.  
Papers:
Codes:
Presentations:
» Object: Qsurf: a software package for compressed QMC integration on parametric surfaces
The main folder contains the following files:
 demo_CQMC_sphpoly: In this demo we compute a cubature rule over spherical polygons via QMC rules. Once the domain is available, we compute a full rule QMC and a compressed one, say CQMC, sharing the same integrals for polynomials up to a total degree.
 demo_CQMC_torus: same as above on a subdomain of a toroidal surface;
 demo_CQMC_franke: same as above on a subdomain of a surface given by Franke's function.
 pts_domain: corresponds to items (i) and (ii) of Algorithm Qsurf (see attached paper);
 cqmc_v2: corresponds to items (iii) and (vi) of Algorithm Qsurf (see attached paper);
 dCHEBVAND_v2: basis selection in item (iii) of Algorithm Qsurf (see attached paper);
 lawsonhanson, LHDM: NNLS implementation;
 dCATCH, implements Caratheodorylike compression via NNLS.
» Sources:
 [1] G. Elefante, A. Sommariva and M. Vianello, PDF Qsurf: compressed QMC integration on parametric surfaces, (submitted),

Last versions:
» Qsurf.zip [MATLAB CODES (Personal homepage)]
» Qsurf.zip [MATLAB CODES (GitHub)]  
Papers:
Codes:
Presentations:
» Object: qBubble: a software package compressed QMC volume and surface integration on union of balls.
The main folder contains the following files:
 demo_CQMC: In this demo we compute a cubature rule on a union of balls or on its surface via QMC rules. Once the domain is available, we compute a full rule QMC and a compressed one, say CQMC, sharing the same integrals for polynomials up to a total degree.
 demo_CQMC_battery: numerical cubature over volumes/surfaces defined by union of balls/spheres. The routine tests the quality of quadrature rules with degree of precision "deg" over polynomials of the form f=@(x,y,z) (a1+b1*x+c1*y+d1*z).^deg; where "a1", "b1", "c1", "d1" are random numbers. Finally it plots, if requires, the relative errors of each test, for some "deg" and logarithmic averages.
 cqmc_v2: the routine computes a Compressed QuasiMonte Carlo formula from a large lowdiscrepancy sequence on a lowdimensional compact set preserving the QMC polynomial moments up to a given degree, via Tchakaloff sets and NNLS momentmatching.
» Sources:
 [1] G. Elefante, A. Sommariva and M. Vianello, Compressed QMC volume and surface integration on union of balls, (submitted),

Last versions:
» qBubble_040323.zip [MATLAB CODES],
» qBubble at GitHub [MATLAB CODES],  Constructive approximation of functions 3 (Krakow, Poland, 2224 February 2023)
» [PDF] ,
Papers:
Codes:
Presentations:
» Object: TetraFreeQ: a software package for Tchakalofflike quadrature on polyhedral elements.
The main folder contains the following files:
 demo_01: battery of tests will be performed, on different polyhedra, for the methods working with or without triangulation; the software compares the performance of the method, on random polynomials of total degree "ade".
 demo_02: single cubature test over polyhedra (convex or concave, even with odd shapes); the demo expains the subroutines usage.
 cubature_polyhedron_free: cubature over polyhedral elements without tetrahedralization;
 cubature_polyhedron_tri: cubature over polyhedral elements via tetrahedralization;
» Sources:
 [1] A. Sommariva and M. Vianello, TetraFreeQ: Tetrahedrafree quadrature on polyhedral elements, (submitted),

Last versions:
» TETRAFREEQ.zip [MATLAB CODES],  FAATNA 20> 22 (Matera, Italy, July 58, 2022)
» [PDF] ,
Papers:
Codes:
Presentations:
» Object: UNIONOFDISKS: a software package for determining cubature rules over union of disks.
The main folder contains the following compressed folders:
 COMPARISONS, contains all the subroutines used for our numerical experiments (including previous software that is compared with the new approach); the main demo is the file demo make experiments that performs the numerical experiments presented in the paper Cubature rules with positive weights on union of disks, comparing the new rules determined by cub_uniondisks, including the compressed version, and the old routine achieved by gqmultibubble;
 demo_make_experiments: it performs the experiments presented in the paper;
 demo_cubature_uniondisk: it compares the results of new rules (including the compresse one) on integrating some functions on certain test domains;
 ROUTINES, contains all the routines necessary for cubature over disks; the main routines are
 cub_uniondiscs: implements the algorithm for determining a cubature formula on the union of disks, including the Tchakaloff rules (i.e. their compressed version);
 demo_cub_uniondiscs: demo explaining how to use the subroutines and comparing the new rules on some domains.
» Sources:
 [1] A. Sommariva and M. Vianello, Cubature rules with positive weights on union of disks, (submitted),

Last versions:
» UNIONOFDISKS.zip [MATLAB CODES],
Papers:
Codes:
» Object: INTERSECTIONOFDISKS: a software package for determining cubature rules over intersection of disks (20172022).
 The main routine for computing the intersection of disks is gqintdisk.m that requires additional routines saved in the folder;
 the demo to test the performance of the previous routine is demo_intersection.m.
Codes:
» INTERSECTIONOFDISKS_2022.zip [MATLAB CODES],
» First update: October 24, 2022. Last update: October 24, 2022.
» Object: CQMC: a software package for lowdimensional Compressed QuasiMonteCarlo cubature.
The main folder contains the following compressed folders:
 ROUTINES_2D.zip, that include many routines for computation of integrals via QMC/CQMC methods on domains obtained by set operation from two bivariate domains whose boundary is defined by piecewise NURBS;
 ROUTINES_3D.zip, that include many routines for computation of integrals via QMC/CQMC methods on domains obtained by set operation from a trivariate polyhedron and a sphere;
 README_FIRST.txt, that explains how to replicate the tests in the paper.
 make_rule, that defines a QMC rule over the domain and then extracts the CQMC rule via cqmc_01;
 cqmc_01, routine that from a sufficiently dense QMC rule computes a low cardinality CQMC rule that matches the QMC moments up to a certain total polynomial degree.
» Sources:
 [1] G. Elefante, A. Sommariva and M. Vianello, CQMC: an improved code for lowdimensional Compressed QuasiMonteCarlo cubature, (submitted),

Last versions:
» ROUTINES_2D.zip [MATLAB CODES],
» ROUTINES_3D.zip [MATLAB CODES]  Presentation at York (January 2023): [PDF]
Papers:
Codes:
Presentation: