New functions and changes log - EranOfek/AstroPack GitHub Wiki
List of new functions and changes
For changes made between May 2021 to Sep 2023 see this link
Important: When editing this page please follow the format used without changes
October 2024
Eran Ofek (2024 Oct 8)
- tools.bit.bitEncode - Encode values as bits in integer
- tools.string.sprintf2string - Given an array of numbers (or chars) create a string array using sprintf formatting.
- tools.table.table_cell2string - Given a table object, convert columns in cell array format to strings
- AstroFileName - New class for managing file names and paths (to replace FileNames)
- AstroFileName, findFirstLast, genFile, genFull, genPath, genProducts, genRefPath, generateSubDir, getDateDir, groupByCounter, groupByTimeGaps, isemptyFile, julday, julday2time, juldayFun, moveImages, nFiles, readFromHeader, reorderEntries, selectByDate, selectByPropVal, selectLastJD, selectNearest2JD, setTestData, sortBy, sortByFunJD, sunAlt, validTimes, validate, write2header
- db.Db - New db class to access and manipulate ClickHouse DB.
- timeSeries.period.period_fitfourier_getH - Construct a design matrix for time series, harmonies, polynomials and constants to use for fitting a periodicity.
September 2024
Eran Ofek (2024 Sep 30)
- imUtil.image.findMaxNearPos - Given an image and list of coordinates, find max values near the list of positions.
- imUtil.ccdsec.ccdsecStr2num - Convert CCDSEC in string format to [Xmin, Xmax, Ymin, Ymax] matrix.
- imUtil.header.headers2table - Export headers in AstroHeader/AstroImage into a table.
- timeSeries.period.period_fitfourier - updated with new capabilities.
- MatchedSources/match2AstroCatalog - Match sources in MatchedSources object to sources in AstroCatalog.
- new celestial.healpix package
- celestial.healpix.ang2pix - Convert lon/lat to the index of the nearest healpix pixel.
- celestial.healpix.coneSearch - cone search for healpix pixels.
- celestial.healpix.isInside - Check if a given point (Lon, Lat) is inside a specified HEALPix pixel.
- celestial.healpix.nPix - Return the number of pixels in healpix given its Nside.
- celestial.healpix.uniqueId2pix - Convert healpix unique Id to Nside and pixel index.
- celestial.healpix.pixRadius - Return the healpix radius, given its NSide.
- celestial.healpix.pixBoundries - Return healpix pixel boundries corners.
- celestial.healpix.pix2uniqueId - Return healpix unique Id from Nside and pixel index.
- celestial.healpix.pix2ang - Return the lon/lat of the centers of the healpix pixels given their index.
- celestial.healpix.mex.pix2ang_nested - pix2ang/nested.
- celestial.healpix.mex.pix2ang_ring - pix2ang/ring.
- celestial.healpix.mex.ang2pix_nested - ang2pix/nested.
- celestial.healpix.mex.ang2pix_ring - ang2pix/ring.
Sasha Krassilchtchikov (2024 Sep 23)
- telescope.obs.optimal_route - Optimize order of visits to a set of sky points in terms of distance
- imProc.art.simulateImage - Simulate a sky image from source PSF and source magnitude distribution in the field
Sasha Krassilchtchikov (2024 Sep 18)
- imProc.sources.mextractor - a first working version of multi-iteration PSF fitting complex (iteratively find and measure objects in a stack of AstroImages)
- imProc.sources.unitTest - a test case for imProc.sources.mextractor
- imUtil.trans.shift_fft - added a new (non-default!) algorithm with Gaussian smoothing and zero-padding in the frequency domain in order to filter out parasite high frequency noise
Eran Ofek (2024 Sep 2)
- telescope.Scheduler/isNewNight - Check if new night
- telescope.Scheduler/timeSinceSunSet - Time (days) since last Sunset.
August 2024
Eran Ofek (2024 Aug 26)
- imUtil.interp.interp2nearest_mex - Fast (mex) 2D nearest interpolation for output grid defined by row and column vectors.
- tools.math.stat.median1 - Fast median of a vector without ignoring NaNs, using mex.
- tools.array.conditionalReplace - Perform an operation of the type: M(A>B)=V, where M and A are arrays, using mex.
- tools.cell.isempty_cell - A much faster mex version. Now mex is used by default.
- tools.cell.isnan_cell - A much faster mex version. Now mex is used by default.
- tools.find.mfind_bin - Add mex option (faster) based on Dan's work.
- tools.hist.histcounts2regular_mex - Fast 2D histogram in a regular grid (mex).
- tools.math.geometry.pitagoras - Pitagorian distance sqrt(X.^2+Y.^2) using mex.
- tools.array.sumInRange - Approximate summation of all elements that are not NaN and between MinVal and MaxVal (mex).
- tools.array.sum2InRange - Sum of squares of an array for all values that are not NaN and between MinVal and MaxVal (mex).
- tools.find.mex.findEqual - Find values in an array (fast mex version of find).
- tools.hist.mex.histcounts1regular_mex - 1D histogram of a single/double vector in a regular, equally spaced, grid (fast mex).
- tools.find.mex.findSmallerFirst - Find the index of the first element in an array which is smaller then some value (fast mex).
- tools.find.mex.findLargerFirst - Find the index of the first element in an array which is larger then some value (fast mex).
- tools.array.cropMat - Crop matrix using mex code. In some cases this is faster. Depands on size and type.
- tools.math.filter.mex.conv1 - 1D convolution (fast mex implementation).
- tools.array.mex.countNaN - Count the number of NaN in an array (fast mex function).
- tools.array.mex.countVal - Count the number of times Value appears in an array (fast mex). [Replacing an old slower version].
- tools.math.stat.mex.minmax - Calculate the min and max of an array of any dimension in one pass (fast mex).
- tools.array.mex.squeezeSumCubeMatNorm - Fast mex for the operation: squeeze(sum(WInt.*MatXcen,[1 2],'omitnan')).*Norm.
- tools.math.stat.mex.meanStdSum_2Dcols_IgnoreNaN - Calculate mean std, and sum of a 2D matrix, over first dimensions, ignoring NaNs (fast mex).
- tools.math.stat.mex.meanStdSum_AllDim_IgnoreNaN - Calculate mean std, and sum of an array, over all dimensions, ignoring NaNs (fast mex).
- celestial.INPOP/getPos - Expediting its speed for single evaluation, by pre-calculating Tstart, Tend, Tmid.
- tools.math.stat.mex.squeezeStdCube_Dim12 - Fast mex for squeeze(mean(A,[1 2],'omitnan')) and squeeze(std(A,0,[1 2],'omitnan'))
- tools.array.mex.squeezeSumAmultB_Dim12 - A fast mex for calculating: squeez(sum(A.*B,[1 2])).*Norm.
- imUtil.image.moment2 - Added UseMex option using: tools.math.stat.mex.squeezeStdCube_Dim12 and tools.array.mex.squeezeSumAmultB_Dim12
July 2024
Eran Ofek (2024 Jul 19)
- imProc.vo.getLinkForSource - Get URL link for source in an AstroCatalog/AstroImage/AstroDiff/...
Eran Ofek (2024 Jul 18)
- imUtil.properSub.dSdPn - Calculate the dS/dP_n (Fn=Fr=1) derivative for ZOGY subtraction.
- AstroZOGY changes: (1) added S_delta, S_ext properties to store the S image for delta function and extended PSF; (2) modify AstroZOGY/subtractionS; (3) Added new arguments; (4) populate S_ext and S_delta.
- io.files.WaitForNewFile class - A class for fast recursive search of files with some criteria, including files created after some reference file. Including several methods.
- io.files.findFiles - Find files using various criteria (UNIX only).
- tools.timeStamp.getTimeStamp - Get time stamp for now.
- tools.timeStamp.writeMsg - Write Msg with time stamp to file.
- tools.timeStamp.readMsgFile - Read msessages and time stamps from file.
- telescope.Scheduler - A new class to replace celestial.Targets, including many new functions.
- pipeline.generic.readAndQualify - Read a set of images into AstroImage, update their headers, and check quality.
- pipeline.last.cleanVisitsVer - Clean visits in LAST archive according to their version (e.g., remove all non v0 versions').
- pipeline.last.prepVisitCat - Prepare a local catalog of visits, or update the visits catalog.
- celestial.coo.findInBox - Given a list of corners of multiple fields, check if a given coordinate (scalar) is within these fields.
June 2024
Ruslan Konno (2024 Jun 27)
- pipeline.last.runTransientsPipe - Run the transients search, takes in a visit directory, performs subtraction and transients search
Eran Ofek (2024 Jun 19)
- telescope.sn.sn_det_psf - Calculate S/N for detection of a Gaussian PSF.
- telescope.sn.sn2flux - Convert S/N for dtection to Flux, given background and PSF.
- imUtil.properSub.dSdF - Calculate the dS/dFn (Fr=1) derivative for ZOGY subtraction.
- AstroZOGY/get.DSDFn - Getter for the dS/dFn (Fr=1) derivative for ZOGY subtraction.
- celestial.INPOP.ecliptic_2eqJ2000 - (Static) Rotate [X;Y;Z] Ecliptic coordinates to Equatorial J2000 coordinates.
Sasha Krassilchtchikov (2024 Jun 13)
- imProc.art.injectSources - inject/subtract source images at given pixel positions of an AstroImage
- imProc.art.unitTest - test of the imProc.art.injectSources functionality: adding artificial sources to a real image
Eran Ofek (2024 Jun 3)
- pipeline.DemonLAST.findAllVisitsDir - (Static) Get all proc visits directories under some base path.
- MatchedSurces.readAndAnalyze - (Static) Read MatchedSources files from a list an execute an analysis function.
- lcUtil.searchVarCoherent - Search for coherent (period/flaring) variable in a MatchedSources object.
Sasha Krassilchtchikov (2024 Jun 2)
- imUtil.art.injectStamps - replaced by several smaller-size functions (see below)
- imUtil.art.injectArtSrc and imUtil.art.directInjectSources -- as a bit ULTRASAT-specfic and not employed elsewhere, moved inside ultrasat.usim ; their general functionality is now available included into the new imUtil.art functions listed below
- imUtil.psf.shift_resample_rotate - resample a PSF stack / cell array downto Oversampling = 1, make it odd-sized, rotate, and shift
- imUtil.art.createSourceCube - given a list of source positions, their fluxes, and a cube / cell array of their PSFs, build a cube / cell array of fluxed PSF stamps, optionally rescaled, rotated, made odd-sized, and shifted to whole pixel positions
- imUtil.art.addSources - inject odd-sized fluxed source images (PSFs) prepared with imUtil.art.createSourceCube into whole pixel positions of an image; NB: the previous version of imUtil.art.injectSources written by N. Segev is now kept an a side option ('Method','NS')
- imUtil.art.subtractSources - calls imUtil.art.addSources with (...,'Subtract',true)
- imUtil.art.addBackground - add single-valued or per pixel background to an image or subtract it
- imUtil.art.addNoise - apply normal or poisson noise to an image of source counts (not count rates!)
- imUtil.art.unitTest - test some of the imUtil.art functions
May 2024
Eran Ofek (2024 May 31)
- MatchedSources/plotLC - Plot LC of individual source in MatchedSources object.
- MatchedSources/corrFields - Calculate the correlation between two Data fields of each source.
- MatchedSources/setBadPhotToNan - set to NaN photometry with bad flags.
- MatchedSources/runMeanFilter - Apply a running mean top-hat filter to data and normalize results by std.
Eran Ofek (2024 May 15)
- timeSeries.filter.runMeanFilter - Apply a running mean top-hat filter to data and normalize results by std.
- pipeline.last.coaddVisits - Coadd multiple LAST visits of a single field.
- imProc.stack.coaddHeader - A utility function for preparing a header of a coadd image from an AstroImage array.
- imProc.stack.coaddW - Weighted Stack/Coadd images in AstroImage object, based on measured Back, Var, and ZP.
- celestial.coo.sphere_dist_fast - The code now uses the haverside formula - faster and more stable.
- sphere_dist_fast_threshDist - Fast spherical angular distance calculation with distance threshold (no calculation above threshold).
Apr 2024
Eran Ofek (2024 Apr 27)
- tools.math.stat.distCorr - Calculate the distance correlation and covariance (independent test).
- tools.math.stat.stdBias_c4 - Return the c4 bias in std due to finite sample size.
Sasha Krassilchtchikov (2024 Apr 21)
- imUtil.art.injectStamps - a new function to make an artificial sky image from input source stamps, fluxes, and (optional) background
- tools.code.updateParFromConfig - update function arguments from a given configuration file (read as singleton)
Ruslan Konno (2024 Apr 14)
- imUtil.kernel2.gabor2d Moved from imUtil.filter.gabor2d
Ruslan Konno (2024 Apr 10)
- imUtil.filter.gabor2d Gets a Gabor filter with different wavelengths in x- and y-directions.
- imUtil.filter.gaborFromPSF Derives a Gabor filter banks based local frequency minima in a PSF.
- AstroDiff/matchfilterGabor - Derives a S/N matched filter image for Gabor filter(s). Useful in identifying sinusoidal patterns in difference image, i.e., ringing artifacts.
Eran Ofek (2024 Apr 02)
- io.files.save - save function to avoid Transparency violation error. Use in parfor.
Mar 2024
Eran Ofek (2024 Mar 28)
- SearchMatchedSources - A class for searching and inspecting variable stars in MatchedSources object. Including multiple methods.
- pipeline.DemonLAST/findAllVisits - Going over all processed image dir and returning a catalog of visits.
- MovingSource/isKnownAstPopulated - Return true is KnownAst is populated.
- MovingSource/findUniqueAsteroidsByNames - Return a list of unique asteroid names with their appearance in the MovingSource object.
- MovingSource/calcPosCommonTime - Return a table of MovingSource position projected at a common time.
- pipeline.DemonLAST/removeUnderlineFromFileName - Remove underline from file name and fix header.
- MovingSource/selectGoodCand - Select good asteroid candidates and classify to types.
- MovingSource/psfFitExtended - Fit PSF and extended PSF to all stamps and search for extended sources.
- MatchedSources/searchOrphans - Search orphans in MatchedSources object.
- pipeline.last.SearchMatchedSources/searchOrphans - Search orphans in MatchedSources object.
- tools.interp.increaseCurveDensityByLocalInterp - Increase the sampling density of some 2D curve.
- celestial.coo.funOnCosDir - Given Lon/Lat, apply a function on the cosined and convert back to Lon/Lat.
- imUtil.asteroids.orphansOnStreak - Given a list of orphans, search for events with the same epoch that are on a straight line.
Sasha Krassilchtchikov (2024 Mar 10)
- astro.extinction.sky_ebv - included an option to apply the Shlafly & Finkbeiner (2011) recalibration to the classical E(B-V) map of Schlegel, Finkbeiner, and Davis (1998) and made it default (otherwise, use 'Recalibrate',false); also included an option to use a new E(B-V) map of Chiang (2023, ApJ, 958, 118).
- astro.extinction.extinction - included an option to use the Fitzpatrick (1999) reddening law instead of that by Cardelli, Clayton, and Mathis (1989); still the CCM law is kept the default (for the new option use 'Model','F99')
- celestial.grid.get_healpix_numbers - a new function to get HEALPIX pixel numbers from sky coordinates and the HEALPIX resolution parameter (npix); the output is a text file with pixel numbers in a row
- plot.skyCircles - plot sky circles of given radii for a given set of circle centers (on the existing "flat" sky plot)
- plot.skyEllipses - plot sky ellipses of given semi-major axes, angles, and excentricities for a given set of ellipse centers (on the existing "flat" sky plot)
Feb 2024
Ruslan Konno (2024 Feb 29)
- AstroDiff/splitNonTransients - New name of AstroDiff/separateNonTransients
- AstroDiff/displayTransients - Displays transient candidates from CatData over new, ref, difference and other images using ds9
- AstroDiff/cutoutTransients - New name of AstroDiff/cutouts
- AstroDiff/matchSolarSystemCat - removed
- AstroDiff/matchMergedCat - removed
- AstroDiff/matchGalaxyCat - removed
- AstroDiff/matchStarCat - removed
- AstroDiff/matchTransients2Cats - removed
- imProc.match.match2Galaxies Matches AstroCatalog entries to galaxies using PGC and GLADE catalogs
- imProc.match.match2Stars Matches AstroCatalog entries to stars using GAIA catalogs
- imUtil.properSub.findNearestPeakSig - New name of imUtil.properSub.processStatMap
Sasha Krassilchtchikov (2024 Feb 22)
- ultrasat.scheduleAllSkySurvey - given a sky grid, start time, and time constraints, make a survey schedule
- ultrasat.LCS_Placement - a first approach to ULTRASAT LCS fields placement
- AstroHeader.writeCSVforBulkInjection - a new function to dump an array of headers to a .csv file so that they match the structure of a particular table in a DB (without a precise match bulk injection from csv often fails)
Eran Ofek (2024 Feb 21)
- imProc.cat.insertCol - Insert columns to an AstroCatalogs in AstroImage.
- lcUtil.fitPolyHyp moved to MatchedSources/fitPolyHyp
- tools.math.stat.std_outlier1 - Std with a single outlier removal if found outside the expected range.
Ruslan Konno (2024 Feb 20)
-
AstroDiff/findTransients - searches for transients candidates in AstroDiff after subtraction
-
AstroDiff/matchSolarSystemCat - matches found transients candidates to solar system objects
-
AstroDiff/matchMergedCat - matches found transients candidates to merged catalog
-
AstroDiff/matchGalaxyCat - matches found transients candidates to galaxy catalog
-
AstroDiff/matchStarCat - matches found transients candidates to star catalog
-
AstroDiff/matchTransients2Cats - matches found transients candidates to catalogs by calling AstroDiff/matchSolarSystemCat, AstroDiff/matchMergedCat, AstroDiff/matchGalaxyCat, and AstroDiff/matchStarCat
-
AstroDiff/measureTransients - measures additional properties of transients candidates based on subtraction method
-
AstroDiff/flagNonTransients - flags transients candidates that are likely not real transients
-
AstroDiff/findMeasureTransients - calls AstroDiff/findTransients, AstroDiff/matchTransients2Cats, AstroDiff/measureTransients, and AstroDiff/flagNonTransients
-
AstroDiff/separateNonTransients - returns two catalogs by separiting likely non-real transients from the rest, one catalog has transients and the other has non-transients
-
AstroDiff/removeNonTransients - removes transients candidates that are likely not real from the AstroDiff
-
imProc.sub.findTransients - searches for transients candidates in AstroDiff after subtraction
-
imProc.sub.measureTransients - measures additional properties of transients candidates based on subtraction method
-
imProc.sub.flagNonTransients - flags transients candidates that are likely not real transients
-
imUtil.properSub.processStatMap - retrieves peak statistics values from a statistics map around given positions
Sasha Krassilchtchikov (2024 Feb 14)
- astro.extinction.sky_ebv_new - a new Galactic extinction map of Gontcharov et al. (astro-ph:2402.06474) NB: to use it, one'd need to copy the database and its interface function to ~/matlab/data/+cats/+maps/
Eran Ofek (2024 Feb 13)
- AstroZOGY - AstroZOGY was created and separated from AstroDiff.
- AstroZOGY/subtractionD - Calculate ZOGY D images and its PSF Pd.
- AstroZOGY/subtractionS - Given D and Pd, populate S and S_hat.
- AstroZOGY/subAsFunFn - Return statistics of D image as a function of Fr.
- AstroZOGY/translient - Apply translient image subtraction to New and Ref in AstroFiff object.
- AstroZOGY/knkr - Return kn_hat, kr_hat, kn, kr.
- AstroZOGY/subtractionScorr - Calculate the ZOGY Scorr statistics - S corrected for source noise and astrometric noise.
- io.files.dirDir - dir function for directories only without '..' and '.'.
- pipeline.DemonLAST/moveRaw2New_AndDeleteProc - Move raw images back to new/ dir and delete the proc/ dir.
- imProc.dark.isBiasDark - Check and validate that a set of images in an AstroImage object are bias or dark images.
- pipeline.DemonLAST/checkMasterDark - Check if MasterDark image is good.
- pipeline.DemonLAST/checkMasterFlat - Check if MasterFlat image is good.
- timeSeries.period.period_nufft - Normalized classical power spectrum calculated using nufft. Return results are equivalent to period_normnl, but much faster.
- Component/insertPropVal - Insert a value in property for all elements of object.
- timeSeries.stat.searchFlares - Search flares and eclipses in equally spaced time series.
- MatchedSiurces/searchFlares - Search flares using timeSeries.stat.searchFlares.
- pipeline.DemonLAST/prepListOfProcVisits - Prepare a list of all processed visits.
- pipeline.DemonLAST/searchConsecutiveVisitsOfField - Prepare a list of all fields observed consecutively.
- tools.find.findListsOfConsecutiveTrue - Given a vector of logicals, return a cell array of all lists of consecutive true found in the vector.
- MatchedSources/countNotNanEpochs - Count the number of not NaN epochs per source.
- timeSeries.period.getFreq - Given times, get a frequency vector, over which it is recommended to search for periodicity.
- AstroDiff/cutouts - Create cutouts of images around coordinates.
- MovingSource/summary - Get summary for all the moving sources.
Jan 2024
Sasha Krassilchtchikov (2024 Jan 28)
- Installer - a database of Chandra ACIS PSFs (pre-generated with the MIT/MARX tool by M. Soumagnac)
- VO.Chandra.processChandraPSF - a technical tool to convert 256 MARX PSF tables into a single .mat object for each ACIS chip
- VO.Chandra.getACIS_PSF - for a given position and roll angle on a given Chandra/ACIS chip, get a Chandra/ACIS PSF (at mono energy or spectrum-weighted)
- tools.find.findGroupOfConsecutiveVals - in vector A find indices of the Mth group of N consecutive elements = Val
Eran Ofek (2024 Jan 26)
- imProc.mask.maskNaN - Mask NaN pixels in the bit mask image.
- imUtil.image.normalize - Additive and multiplicative normalization of an image.
- FileNames/selectByDate - Select entries by JD in some range.
- pipeline.last.pointingModel_Solve - Perform astrometric solution to a list of images and keep the data needed for pointing model.
- pipeline.last.pointingModel_Write - Write the results of pointingModel_Solve into a configuration file.
- AstroDiff class - A class for ZOGY and Translient image subtraction.
- AstroDiff/AstroDiff - Constructor for the AstroDiff class. Including setters/getters.
- AstroDiff/register - Register the New and Ref images in AstroDiff using their WCS.
- AstroDiff/estimateFnFr - Estimate Fn/Fr (flux matching) and return matching factors such that Fn=1.
- AstroDiff/estimateBackVar - Estimate global background and variance of New and Ref images.
- AstroDiff/replaceNaN - Replace NaN pixels in New and Ref with Back value or other value.
Arie Blumenzweig (2024 Jan 24)
- Added startup for running the LAST pipeline in batch mode (
startup/startBatchLASTPipeline.m
). Used to initiate the last-pipeline service.
Sasha Krassilchtchikov (2024 Jan 22)
- ds9.write_polygon_region - write a ds9 region file with multiple polygon lines (ds9.write_region does not produce good enough polygon files)
Eran Ofek (2024 Jan 18)
- In ImageComponent - added an IsFFT property.
- AstroDiff - class for storing subtraction images (main file only).
- pipeline.DemonLAST.prep_zSpecial - (static) prep a zSpecialInst.txt file from a list.
Sasha Krassilchtchikov (2024 Jan 17)
- added several new columns to image tables defined in db.AstroDb NB: when a new version of LAST DB is started, we need to first create the tables manually by the relevant db.AstroDB functions (the pipeline daemon does not do it by itself), and only after that start the pipeline.
- changed the time stamps for COADD filenames in imProc.io.writeProduct (now they always correspond to the JD of the first image of the relevant visit).
Eran Ofek (2024 Jan 16)
- MovingSource.read - (Static) Read a MovingSource object from a file.
- MovingSource.astCrop2MovingSource - (Static) Convert old AstCrop structure into a MovingSource object.
Arie Blumenzweig (2024 Jan 16)
- Added systemd notication via
tools.systemd.mex.notify_ready
andtools.systemd.mex.notify_watchdog
. Does nothing if environment variableSYSTEMD
is not set. The systemd expects the pipeline to usenotify_watchdod
at intervals less than half an hour.
Sasha Krassilchtchikov (2024 Jan 15)
- time stamp in the MIDJD keyword of COADD images changed from median to weighted mean of the actual PROC images used to build the COADD in imProc.stack.coadd
- plot.ungridded_image - color plot an image of Z(X,Y) when X and Y do not form a regular grid
- ultrasat.ULTRASAT_visibility_maps - calculate and plot uninterrupted ULTRASAT visibilities for the whole sky
Eran Ofek (2024 Jan 14)
- celestial.coo.invRefraction - Refracted altitude (apparent) to geometrical altitude (real).
- MovingSource - MovingSources class can be used to store detection of minor planet (or any moving) objects.
- MovingSource.readFromAstCrop - (Static) Read AstCrop structure (old format) into MovingSource object.
- MovingSource/nearStatisSrc - Check for static sources near the moving source.
- MovingSource/nearestKnownAst - Return the angular distance for the nearest known asteroid.
- MovingSource/selectByBitMask - Select elements of MovingSource object that have specific BitMask.
- MovingSource/selectMovingFromStamps - Create a catalog of the moving source position as a function of time.
- MovingSource/reportMPC - Generate MPC report for MovingSource object.
- MovingSource/dispInfo - Display moving source information on screen.
- MovingSource/blink1 - Display stamps along with sources, asteroid, and known minor planets positions and blink the images.
- MovingSource/blink - Interactivly loop over all moving sources with blink1.
- MovingSource/popKnownAst - Populate KnownAst in all elements of MovingSource object.
- astro.spec.accretionDiskSpec - Calculate simplified optically thick accretion disk spectrum. (replacing: accretion_disk).
- tools.math.stat.std_mad - Std using the mean absolute deviation (mad) function.
- imProc.mask.maskCR - Find cosmic rays (CR) flag them in the mask image, and optionally remove from a catalog.
- imProc.mask.peak_x1_diff - Set bit mask and optionally remove from catalog sources with X1 position very different than XPEAK.
- MovingSource/lightCurveVariability - Create simple light curve for moving source.
Sasha Krassilchtchikov (2024 Jan 04)
- a new function isemptyProperty added to the Base class - check if a given property of a given class matrix is empty (useful for various pipeline checks)
Eran Ofek (2024 Jan 03)
- plot.xy2axesPos - Given axis handle and X/Y positions, return the position in the axes coordinates.
- MatchedSources/plotRMSint - plot rms vs. magnitude with interactive selection of stars.
- celestial.convert.precessCoo - Precess coordinates.
- celestial.convert.convert_ha - Convert HA/RA to RA/HA.
- celestial.INPOP.init - (static) Create and populate celestial.INPOP object.
- celestial.convert.j2000_toApparent - Calculate the apparent position of stars.
- celestial.convert.cooResolve - Convert units for input coordinates or resolve object name into coordinates.
- celestial.convert.refractedCoo - Apply atmospheric refraction to RA and Dec coordinates.
- celestial.convert.apparent_toJ2000 - Apparent coordinates to J2000 coordinates (approximation!).
Sasha Krassilchtchikov (2024 Jan 01)
- celestial.search.isPointInsidePolygon - A logical function to tell if a point on a sphere falls inside a given spherical polygon. Will work even if the polygon includes one of the poles, but not both poles at a time.
- Installer - added a section for MinorPlanetsCT data (merged common epoch orbital elements)
Dec 2023
Eran Ofek (2023 Dec 14)
- Add property Table to AstroTable - convert the catalog to table format.
- imUtil.spec.trace.linearizeTrace - Given an image containing a curved trace, and the trace function, generate a linearized version of the image.
- imUtil.spec.extract.backStd - Calculate the std of the background in a 2D spectral image.
- imUtil.spec.extract.measurePSF - Measure line-PSF in spectral image.
- imUtil.spec.extract.fitPSF1d - Given a linear spectrum in a 2D image, fit the flux of a line-PSF to each wavelength.
- imUtil.spec.extract.aperPhot - Given a linear spectrum in a 2D image, extract flux in aperture from each wavelength.
- imUtil.spec.waveCalib.fitWaveCalib - Robust polynomial fitting of pixel position and wavelength.
- io.files.renameFile - Rename file names using regular expression replacement.
- FITS.fpack - Compress FITS files using fpack.
- FITS.funpack - Uncompress FITS files using fpack
- astro.binary.predictTransit - Given binary ephemeris, predict the time of transits.
Sasha Krassilchtchikov (2023 Dec 14)
- a new sub-package astro.extinction created: astro.spec.extinction moved to astro.extinction.extinction astro.spec.sky_ebv moved to astro.extinction.sky_ebv
- a new sub-package celestial.grid created for sky tessellation functions: celestial.coo.tile_the_sky moved to celestial.grid.tile_the_sky celestial.grid.make_healpix_grid - construct a grid of HEALPix (text file output)
- appropriate syntax changes due to functions renaming implemented throughout the AstroPack
Sasha Krassilchtchikov (2023 Dec 13)
- astro.extinction.extinctionGrid - make a .mat object containing extinction (A_lam) for a given sky grid and filter (or frequency)
- celestial.grid.statSkyGrid - calculate statistics of a gridded value for a given sky position and radius (employs equiareal grids of HEALPix)
- ~matlab/AstroPack/matlab/astro/+celestial/+grid/make_healpix_grid.py - make a sky grid of equiareal HEALPix positions
- celestial.grid.make_healpix_grid - matlab wrapper for make_healpix_grid.py
Eran Ofek (2023 Dec 11)
- imUtil.spec.lines.xcorrLineWidth - Correlation coef. between data and template when the template is convolved with a filter.
- In: celestial.OrbitalEl.loadSolarSystem - added a 'merge' option - upload a merged OrbitalEl object with numbered, unnumbered, and comets with common epoch.
- DS9analysis/plotKnownAst - Search for known minor bodies in image coordinates and plot their positions.
- celestial.OrbitalEl/desig2number - Convert asteroid designation to number.
- AstroSpec/getSkyArcsSpecLines - Get sky/arcs spectra and lines list DB.
- AstroSpec/getSpecPhotStandard - Get spectrum of standard star.
- AstroSpec/scaleWave - Scale wavelength axis (multiply by scale).
- AstroSpec/shiftWave - Shift wavelength axis (add a shift).
- timeSeries.peaks.localMax - Find local maxima in 1D time series, including pre-filtering and thresholding.
- timeSeries.filter.filterStd - Calculate the 1-D std filter on equally spaced time series.
- imUtil.filter.xcorr1_scale_shift - Find the best shift and scale between two time series using cross-correlation.
- imUtil.spec.trace.fitTrace - Fit a trace position as a function of wavelength position.
- pipeline.DemonLAST/specialInstruction - Check for pipeline special instructions and modify arguments using new instructions.
Eran Ofek (2023 Dec 4)
- imProc.cat.getCat - Get only the AstroCatalog from AstroImage or AstroCatalog and populate JD.
- imProc.astrometry.getCooCenter - Get image/catalog center coordinates and radius.
- imProc.match.match2solarSystem - (rewritten) Match sources in AstroCatalog object to Solar System objects.
- ds9.isXPAexist - check if xpa is installed.
- imUtil.spec.extract.fitBackground - Fit background to a 2D spectral image.
- timeSeries.interp.uniformResample - Uniform resampling of a non-evenly spaced time series (replacing: resample_uniform)
- tools.os.df - Get disk storage status (for UNIX-like systems).
- imUtil.background.modeVar_LogHist - Estimate the mode and variance of an array (over all dims).
Sasha Krassilchtchikov (2023 Dec 03)
- imProc.psf.constructPSF is obsoleted by imProc.psf.populatePSF (still can be used as a non-default option of the latter). Appropriate call changes implemented and tested throughout the AstroPack.
Nov 2023
Eran Ofek (2023 Nov 30)
- celestial.OrbitalEl/insertElements - Insert orbital elements from one object into a second object.
- celestial.OrbitalEl/propagate2commonEpoch - Propagate all orbital elements to a common epoch.
- celestial.OrbitaEl/searchMinorPlanetsNearPosition - (fixing bugs and rewrite) Search all minor planets/comets near position on a specific date.
- celestial.ephem.ephemKepler - Calculate ephemerides for OrbitalEl object.
- celestial.ephem.ephemMultiObj - Generate multiple targets ephemeris for a single epoch by orbital integration.
- celestial.ephem.ephemKeplerMultiTime - Calculate ephemerides for OrbitalEl object by solving the Kepler equation.
- celestial.ephem.ephemKeplerMultiObj - Calculate ephemerides for OrbitalEl object by solving the Kepler equation.
- moved astro.mag.meanPhotonWeightedFlux, astro.mag.transmissionMeanWave, astro.mag.transmissionPivotWave, astro.mag.transmissionEffWave from +spec to +mag
- astro.mag.spec2ABmag - Convert spectrum + transmission to AB magnitude.
Eran Ofek (2023 Nov 24)
- BitDictionary/showDictionaries - Show all avialable BitMask-related configuration files.
- celestial.OrbitalEl.targetBaryPos - Target barycentric position. Calculate the target barycentric position in a rectangular J2000.0 equatorial system. The calculation can be done by solving the Kepler equation, or by direct integration of the equation of motion, under perturbations from all the planets.
- celestial.OrbitalEl.integrateElements - Convert OrbitalEl object from one epoch to another via direct integration of the target given perturbations from all major planets. This can be used to convert multiple target elements that have a common epoch into a new (scalar) epoch.
Eran Ofek (2023 Nov 21)
- MatchedSources.rdirMatchedSourcesSearch - (static) Recursive search for MergedMat files and return file names. The output is a structure array in which each element contains the file name per CropID.
- MatchedSources.readList - (static) Read a list of MatchedSources hdf5 files into a MatchedSources object.
- celestial.OrbitalEl.elements2pos - Get rectangular coordinates and velocity from orbital elements at some epoch.
- MatchedSources/selectGoodPhotCalibStars - Selects stars which are good for photometric calibration. Given a single element MatchedSources object select stars which have good FLGAS, good S/N, errors and chi^2.
- celestial.INPOP/populateAll - Populate all INPOP tables.
- tools.code.newFun - Create a new function in existing package.
- celestial.SolarSys.getJPL_allOrbitalElements - Retrieve orbital elements as a function of time for all minor planets.
- tools.unitTester.testAll - Search and execute all the unitTest functions in AstroPack.
- celestial.Kepler.xyz2elements - Convert rectangular heliocentric coo. and vel. to orbital elements.
Sasha Krassilchtchikov (2023 Nov 12)
- AstroPSF - according to a request of Yossi, added an option to fill the PSF
with a synthetic kernel immediately at the object's creation:
AP = AstroPSF('Synthetic','gauss','GaussSigma',[3 4 0],'StampSize',[15 19]);
AP = AstroPSF('Synthetic','lorentzian','LorentzianGamma',2);
AP = AstroPSF('Synthetic','cosbell','CosbellRadii',[6 10],'StampSize',21);
AP = AstroPSF('Synthetic','moffat','MoffatAlphaBeta',[0.7 3]);
Eran Ofek (2023 Nov 11)
- timeSeries.period.periodFoldedEventsBeaming - Search for beaming periodicity in time tagged and energy tagged photon list.
- celestial.SolarSys.getJPL_ephem - A general purpose access to JPL horizons ephemeris.
- celestial.INPOP/compare2JPL - Compare INPOP to JPL horizons ephemeris.
- celestial.OrbitalEl/ephemKeplerMultiObj - Calculate ephemerides for OrbitalEl object by solving the Kepler equation. This function is optimized for multi objects.
- celestial.OrbitalEl/ephemKeplerMultiTime - Calculate ephemerides for OrbitalEl object by solving the Kepler equation. This function is optimized for multi times.
- celestial.OrbitalEl/ephem - [New version] Calculate ephemerides for OrbitalEl object. This function calls ephemKeplerMultiObj or ephemKeplerMultiTime, or ephemIntegrate.
Eran Ofek (2023 Nov 08)
- tools.math.stat.medianSparse - Calculate the median of an array using only a sub-sample of the points.
- imProc.stat.medianSparse - Return the median of AstroImage object images, using the tools.math.stat.medianSparse function.
Sasha Krassilchtchikov (2023 Nov 07)
- db.AstroDb.insert - added options for bulk injection of catalog and header data
- pipeline.DemonLAST - a) added some [INF] log messages to better monitor the performance and speed; b) clarified and compactified the DB part
Eran Ofek (2023 Nov 06)
- celestial.INPOP.forceAll - Calculate the Sun+Planets+Moon force on a Solar System object.
- celestial.SolarSys.earthObserverPos - Earth/topocentric ecliptic position relative to the Solar System barycenter.
- celestial.OrbitalEl.ephemKepler - Calculate ephemerides for OrbitalEl object by solving the Kepler equation (like ephem, but without the integration option).
- tools.array.init - Initialize an array with a given value (Mex version available to potentially speed up the process).
- plot.getInteractive - Get clicked positions (mouse, key, rect) interactively.
- celestial.SolarSys.anglesFromDistances - Given Distances between 3 bodies, return the angles.
- celestial.SolarSys.cart2eqAng - Topocentric cartesian ecliptic (or eq.) to equatorial J2000 RA, Dec.
- imProc.instCharc.fwhmPosition - Measure the FWHM as a function of position in AstroImage object.
Chen Tishler (2023 Nov 02)
- Added new functions in tools.os: getCmdLine(), getPid(), getProcessList(), getProcessName(), updateWatchdogFile()
- Fixes in SnrApp: Terminated after 8 hours, the batch file loads python monitor before running the matlab process in loop
Oct 2023
Eran Ofek (2023 Oct 29)
- tools.code.countLinesCode - Count lines of .m files code under some directory.
- celestial.INPOP.getAll - Get the position and velocity for all INPOP objects.
- celestial.SolarSys.getJPL_CloseApproachNEO - Get list of NEO close approaches to Earth along with their JPL ephemeris.
Sasha Krassilchtchikov (2023 Oct 29)
- AstroPSF - a new version of the class file supporting multi-D PSF stamps and with a number of additional properties and functions replaced the current one (a detailed description will be given in the git Wiki at https://github.com/EranOfek/AstroPack/wiki/AstroPSF)
Eran Ofek (2023 Oct 28)
- tools.rand.randInCirc - Generate random numbers uniformly within a circle.
- astro.stars.limbDarkening - Return the limb darkening value as a function of mu and coef.
- astro.stars.getClaret2020_LimbDarkeningWD - Get the Claret (2020) WD limb darkening coef.
- cats.stars.limbDarkening.LimbDarkeningWD_4par - Table of 4par limb darkening for WDs from Claret (2020)
Nora Strotjohann (2023 Oct 27)
- pipeline.DemonLAST.getRefImage - implemented function. Still missing: what to do when more than one reference image available, deal with missing CropID, FieldID or coordinate string not in file name
- pipeline.DemonLAST.populateRefPath - repaired function
Sasha Krassilchtchikov (2023 Oct 26)
- tools.math.filter.smooth_downsample - smooth a 1D function with a Gaussian kernel and then downsample it by a whole factor (this can be used, e.g., to digest collections of high-resolution spectra and produce more compact archives at lower resolution without loosing the main features and with keeping the total energy and the spectral energy balance between different bands)
- imUtil.psf.containment renamed to imUtil.psf.quantileRadius (with appropriate call name changes throughout the AstroPack)
- tools.os.relPath2absPath - make the path of a file or of a directory absolute if it is relative
- imUtil.psf.oversampling - resample a PSF stamp to a different pixel scale
Sasha Krassilchtchikov (2023 Oct 25)
- pipeline.DemonLAST.unitTest - a unit test for the DemonLAST pipeline: a minimal example (MWP) containing 1 x 20 standard exposures taken by LAST.01.08.03 at 2023/06/16. The test performs a single run of the pipeline up to COADD, writes the products to the disk, but does not invoke any DB manipulation (in order to be possible to run it in a wider range of environments and machines).
An important note: before running the test, a user needs to install the dataset with the Installer class:
I = Installer; I.installSingle('LASTpipelineUnitTest');
- imUtil.psf.normPSF - normalize a PSF stamp or to 1 or to the rms value
Eran Ofek (2023 Oct 24)
- timeSeries.filter.fitFilter1D - Matched filter fitting of a 1-D time series with a template bank.
- timeSeries.period.periodFoldedMatchedFilter - Matched filter periodicity search for unevenly spaced light curves.
- celestial.OrbitalEl.compareEphem2JPL - (Static) Compare ephemeris with JPL ephemeris [see issue 263]
- astro.spec.meanPhotonWeightedFlux - Calculate the mean flux (photon-weighted) multiplied by the response.
- astro.spec.fLambda2fNu - Convert specific flux in f_lambda to f_nu units.
- astro.spec.fNu2fLambda - Convert specific flux in f_nu to f_lambda units.
- astro.spec.sourceInstSensetivity - Calculate the Source independent instrumental sensitivities.
- astro.spec.transmissionPivotWave - Calculate the Pivot wavelength of a transmission function.
- transmissionEffWave - Calculate the effective wavelength of a transmission function.
- transmissionMeanWave - Calculate the mean wavelength of a transmission function.
- pipeline.DemonLAST/populateRefPath - Get path for reference images location on the LAST computers.
- pipeline.DemonLAST.getCamNumFromProjName - (Static) get camera number from project name.
- timeSeries.detrend.regress - Detrend a time series by regression against external parameters.
- timeSeries.detrend.cleanByExternalSigmaClip - Clean dataset in a matrix by selecting entries that are with N*sigma from the mean of each column.
Sasha Krassilchtchikov (2023 Oct 19)
- ultrasat.weightedPSFindex - build an array of spectra for ULTRASAT PSF weighting or find the index of a particular spectrum in this array, which is able to include any types of spectra (currently populated with the whole set of Pickles' spectra for normal metallicity and with blackbodies)
- ultrasat.weightedPSF - added a section which can be used to build a "universal" weighted PSF library including all types of spectra
- ultrasat.getULTRASAT_PSF - added a section to deal with a "universal" weighted PSF library
Eran Ofek (2023 Oct 18)
- plot.cornerPlot4cube - Cut a cube to all possible 2D cuts, and plot.
- tools.array.arrayAllCuts - Cut a cube to all possible 2D cuts (1 by 2, 1 by 3, ..., 2 by 3, etc.
- tools.array.arrayMarginalization - For each dimension in an array, marginalize over all other dimensions. Also apply function prior and following the marginalization.
- imProc.sources.getSrcStamps - Given an AstroImage, get a cube of stamps around sources.
- AstroCube - A container class for Cubes of images and stamps
Sasha Krassilchtchikov (2023 Oct 15)
- Installer - added a section for the HST Low Resolution Stellar Library (http://astro.wsu.edu/hststarlib/), added support for data archives in ZIP format
- AstroSpec.specHSTStarlib23 - access to the spectra of the HST Low Resolution Stellar Library
Eran Ofek (2023 Oct 15)
- timeSeries.period.periodPoisson - Power spectrum (periodogram) for time-tagged events with Poisson statistics. Function created (partial testing done).
- timeSeries.period.periodFoldedEvents - Search periodicity in time-tagged events by folding and sin fitting.
- VO.Chandra.getSrcPhotons - Get Chandra photons of a single source over all ObsIDs.
Sasha Krassilchtchikov (2023 Oct 13)
- ultrasat.weightedPSF - construct a library of spectrum-weighted ULTRASAT PSFs based on Pickles' stellar spectra or black body spectra
- ultrasat.getULTRASAT_PSF - get a weighted PSF stamp either from a prepared library of Pickles' or black body spectra or to directly produce a weighted PSF stamp for a given stellar class and angular distance of the source
Sasha Krassilchtchikov (2023 Oct 8)
- astro.stars.tlogg2picklesClass - Get a star's spectral class and luminosity class from its Teff and log(g)
- AstroPSF1 - a development version of AstroPSF capable of dealing with multi-D PSF stamps
Eran Ofek (2023 Oct 7)
- imProc.psf.populatePSF - Populate PSF in an AstroImage (to replace constructPSF).
- astro.stars.mass_radius_lum - Return the mass-radius-effective T, logg, Lum, for the main sequence.
- astro.binary.self_microlensing - Calculate the self microlensing for binary stars.
- MatchedSources/searchFlags - Identify specific flags in MatchedSources matrix.
- MatchedSources/countFlags - Count specific flags per source or per epoch.
- MatchedSources/lsqRelPhot - Perform relative photometry calibration using the linear least square method.