Exports
Exports aim to provide a consistent generation of images of your results. For example if you record the trace your algorithm walks on the Sphere, you can easily export this trace to a rendered image using asymptote_export_S2_signals and render the result with Asymptote. Despite these, you can always record values during your iterations, and export these, for example to csv.
Asymptote
The following functions provide exports both in graphics and/or raw data using Asymptote.
Manopt.asymptote_export_S2_data — Methodasymptote_export_S2_data(filename)Export given data as an array of points on the 2-sphere, which might be one-, two- or three-dimensional data with points on the Sphere $𝕊^2$.
Input
filenamea file to store the Asymptote code in.
Optional arguments for the data
dataa point representing the 1D,2D, or 3D array of pointselevation_color_schemeAColorSchemefor elevationscale_axes=(1/3,1/3,1/3): move spheres closer to each other by a factor per direction
Optional arguments for asymptote
arrow_head_size=1.8: size of the arrowheads of the vectors (in mm)camera_positionposition of the camera scene (default: atop the center of the data in the xy-plane)targetposition the camera points at (default: center of xy-plane within data).
Manopt.asymptote_export_S2_signals — Methodasymptote_export_S2_signals(filename; points, curves, tangent_vectors, colors, kwargs...)Export given points, curves, and tangent_vectors on the sphere $𝕊^2$ to Asymptote.
Input
filenamea file to store the Asymptote code in.
Keywaord arguments for the data
colors=Dict{Symbol,Array{RGBA{Float64},1}}(): dictionary of color arrays, indexed by symbols:points,:curvesand:tvector, where each entry has to provide as least as many colors as the length of the corresponding sets.curves=Array{Array{Float64,1},1}(undef, 0): anArrayofArraysof points on the sphere, where each inner array is interpreted as a curve and is accompanied by an entry withincolors.points=Array{Array{Float64,1},1}(undef, 0): anArrayofArraysof points on the sphere where each inner array is interpreted as a set of points and is accompanied by an entry withincolors.tangent_vectors=Array{Array{Tuple{Float64,Float64},1},1}(undef, 0): anArrayofArraysof tuples, where the first is a points, the second a tangent vector and each set of vectors is accompanied by an entry from withincolors.
Keyword arguments for asymptote
arrow_head_size=6.0: size of the arrowheads of the tangent vectorsarrow_head_sizesoverrides the previous value to specify a value pertVector` set.camera_position=(1., 1., 0.): position of the camera in the Asymptote sceneline_width=1.0: size of the lines used to draw the curves.line_widthsoverrides the previous value to specify a value per curve andtVector` set.dot_size=1.0: size of the dots used to draw the points.dot_sizesoverrides the previous value to specify a value per point set.size=nothing: a tuple for the image size, otherwise a relative size4cmis used.sphere_color=RGBA{Float64}(0.85, 0.85, 0.85, 0.6): color of the sphere the data is drawn onsphere_line_color=RGBA{Float64}(0.75, 0.75, 0.75, 0.6): color of the lines on the spheresphere_line_width=0.5: line width of the lines on the spheretarget=(0.,0.,0.): position the camera points at
Manopt.asymptote_export_SPD — Methodasymptote_export_SPD(filename)export given data as a point on a Power(SymmetricPOsitiveDefinnite(3))} manifold of one-, two- or three-dimensional data with points on the manifold of symmetric positive definite matrices.
Input
filenamea file to store the Asymptote code in.
Optional arguments for the data
dataa point representing the 1D, 2D, or 3D array of SPD matricescolor_schemeaColorSchemefor Geometric Anisotropy Indexscale_axes=(1/3,1/3,1/3): move symmetric positive definite matrices closer to each other by a factor per direction compared to the distance estimated by the maximal eigenvalue of all involved SPD points
Optional arguments for asymptote
camera_positionposition of the camera scene (default: atop the center of the data in the xy-plane)targetposition the camera points at (default: center of xy-plane within data).
Both values camera_position and target are scaled by scaledAxes*EW, where EW is the maximal eigenvalue in the data.
Manopt.render_asymptote — Methodrender_asymptote(filename; render=4, format="png", ...)render an exported asymptote file specified in the filename, which can also be given as a relative or full path
Input
filenamefilename of the exportedasyand rendered image
Keyword arguments
the default values are given in brackets
render=4: render level of asymptote passed to its-renderoption. This can be removed from the command by setting it tonothing.format="png": final rendered format passed to the-foptionexport_file: (the filename with format as ending) specify the export filename