Lines Matching refs:bar
35 PetscErrorCode PetscDrawBarCreate(PetscDraw draw, PetscDrawBar *bar) in PetscDrawBarCreate() argument
41 PetscAssertPointer(bar, 2); in PetscDrawBarCreate()
54 *bar = h; in PetscDrawBarCreate()
78 PetscErrorCode PetscDrawBarSetData(PetscDrawBar bar, PetscInt bins, const PetscReal data[], const c… in PetscDrawBarSetData() argument
81 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSetData()
83 if (bar->numBins != bins) { in PetscDrawBarSetData()
84 PetscCall(PetscFree(bar->values)); in PetscDrawBarSetData()
85 PetscCall(PetscMalloc1(bins, &bar->values)); in PetscDrawBarSetData()
87 PetscCall(PetscArraycpy(bar->values, data, bins)); in PetscDrawBarSetData()
88 PetscCall(PetscCIntCast(bins, &bar->numBins)); in PetscDrawBarSetData()
89 if (labels) PetscCall(PetscStrArrayallocpy(labels, &bar->labels)); in PetscDrawBarSetData()
105 PetscErrorCode PetscDrawBarDestroy(PetscDrawBar *bar) in PetscDrawBarDestroy() argument
108 if (!*bar) PetscFunctionReturn(PETSC_SUCCESS); in PetscDrawBarDestroy()
109 PetscValidHeaderSpecific(*bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarDestroy()
110 if (--((PetscObject)*bar)->refct > 0) PetscFunctionReturn(PETSC_SUCCESS); in PetscDrawBarDestroy()
112 PetscCall(PetscFree((*bar)->values)); in PetscDrawBarDestroy()
113 PetscCall(PetscStrArrayDestroy(&(*bar)->labels)); in PetscDrawBarDestroy()
114 PetscCall(PetscDrawAxisDestroy(&(*bar)->axis)); in PetscDrawBarDestroy()
115 PetscCall(PetscDrawDestroy(&(*bar)->win)); in PetscDrawBarDestroy()
116 PetscCall(PetscHeaderDestroy(bar)); in PetscDrawBarDestroy()
132 PetscErrorCode PetscDrawBarDraw(PetscDrawBar bar) in PetscDrawBarDraw() argument
143 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarDraw()
144 PetscCall(PetscDrawIsNull(bar->win, &isnull)); in PetscDrawBarDraw()
146 PetscCallMPI(MPI_Comm_rank(PetscObjectComm((PetscObject)bar), &rank)); in PetscDrawBarDraw()
148 if (bar->numBins < 1) PetscFunctionReturn(PETSC_SUCCESS); in PetscDrawBarDraw()
150 color = bar->color; in PetscDrawBarDraw()
154 numValues = bar->numBins; in PetscDrawBarDraw()
155 values = bar->values; in PetscDrawBarDraw()
156 if (bar->ymin == bar->ymax) { in PetscDrawBarDraw()
165 ymin = bar->ymin; in PetscDrawBarDraw()
166 ymax = bar->ymax; in PetscDrawBarDraw()
171 labels = bar->labels; in PetscDrawBarDraw()
173 if (bar->sort) { in PetscDrawBarDraw()
177 if (bar->sorttolerance) { in PetscDrawBarDraw()
179 if (values[perm[numValues - i - 1]] < bar->sorttolerance) { in PetscDrawBarDraw()
187 draw = bar->win; in PetscDrawBarDraw()
191 PetscCall(PetscDrawAxisSetLimits(bar->axis, xmin, xmax, ymin, ymax)); in PetscDrawBarDraw()
192 PetscCall(PetscDrawAxisDraw(bar->axis)); in PetscDrawBarDraw()
197 idx = (bar->sort ? perm[numValues - i - 1] : i); in PetscDrawBarDraw()
215 if (bar->sort) PetscCall(PetscFree(perm)); in PetscDrawBarDraw()
234 PetscErrorCode PetscDrawBarSave(PetscDrawBar bar) in PetscDrawBarSave() argument
237 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSave()
238 PetscCall(PetscDrawSave(bar->win)); in PetscDrawBarSave()
256 PetscErrorCode PetscDrawBarSetColor(PetscDrawBar bar, int color) in PetscDrawBarSetColor() argument
259 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSetColor()
260 bar->color = color; in PetscDrawBarSetColor()
278 PetscErrorCode PetscDrawBarSort(PetscDrawBar bar, PetscBool sort, PetscReal tolerance) in PetscDrawBarSort() argument
281 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSort()
282 bar->sort = sort; in PetscDrawBarSort()
283 bar->sorttolerance = tolerance; in PetscDrawBarSort()
303 PetscErrorCode PetscDrawBarSetLimits(PetscDrawBar bar, PetscReal y_min, PetscReal y_max) in PetscDrawBarSetLimits() argument
306 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSetLimits()
307 bar->ymin = y_min; in PetscDrawBarSetLimits()
308 bar->ymax = y_max; in PetscDrawBarSetLimits()
330 PetscErrorCode PetscDrawBarGetAxis(PetscDrawBar bar, PetscDrawAxis *axis) in PetscDrawBarGetAxis() argument
333 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarGetAxis()
335 *axis = bar->axis; in PetscDrawBarGetAxis()
354 PetscErrorCode PetscDrawBarGetDraw(PetscDrawBar bar, PetscDraw *draw) in PetscDrawBarGetDraw() argument
357 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarGetDraw()
359 *draw = bar->win; in PetscDrawBarGetDraw()
381 PetscErrorCode PetscDrawBarSetFromOptions(PetscDrawBar bar) in PetscDrawBarSetFromOptions() argument
386 PetscValidHeaderSpecific(bar, PETSC_DRAWBAR_CLASSID, 1); in PetscDrawBarSetFromOptions()
388 …PetscCall(PetscOptionsHasName(((PetscObject)bar)->options, ((PetscObject)bar)->prefix, "-bar_sort"… in PetscDrawBarSetFromOptions()
390 PetscReal tol = bar->sorttolerance; in PetscDrawBarSetFromOptions()
391 …PetscCall(PetscOptionsGetReal(((PetscObject)bar)->options, ((PetscObject)bar)->prefix, "-bar_sort"… in PetscDrawBarSetFromOptions()
392 PetscCall(PetscDrawBarSort(bar, PETSC_TRUE, tol)); in PetscDrawBarSetFromOptions()