Lines Matching refs:sw
258 PetscErrorCode DMSwarmCellDMGetBlockSize(DMSwarmCellDM celldm, DM sw, PetscInt *bs) in DMSwarmCellDMGetBlockSize() argument
262 PetscValidHeaderSpecific(sw, DM_CLASSID, 2); in DMSwarmCellDMGetBlockSize()
268 PetscCall(DMSwarmGetFieldInfo(sw, celldm->dmFields[f], &fbs, NULL)); in DMSwarmCellDMGetBlockSize()
344 PetscErrorCode DMSwarmSetPointsUniformCoordinates(DM sw, PetscReal min[], PetscReal max[], PetscInt… in DMSwarmSetPointsUniformCoordinates() argument
363 DMSWARMPICVALID(sw); in DMSwarmSetPointsUniformCoordinates()
364 PetscCall(DMSwarmGetCellDMActive(sw, &celldm)); in DMSwarmSetPointsUniformCoordinates()
366 …PetscCheck(Nfc == 1, PetscObjectComm((PetscObject)sw), PETSC_ERR_SUP, "We only support a single co… in DMSwarmSetPointsUniformCoordinates()
445 PetscCall(DMSwarmGetLocalSize(sw, &n_curr)); in DMSwarmSetPointsUniformCoordinates()
447 PetscCall(DMSwarmSetLocalSizes(sw, n_new_est, -1)); in DMSwarmSetPointsUniformCoordinates()
452 PetscCall(DMSwarmSetLocalSizes(sw, n_new_est, -1)); in DMSwarmSetPointsUniformCoordinates()
458 PetscCall(DMSwarmGetField(sw, coordFields[0], NULL, NULL, (void **)&swarm_coor)); in DMSwarmSetPointsUniformCoordinates()
459 PetscCall(DMSwarmGetField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmSetPointsUniformCoordinates()
468 PetscCall(DMSwarmRestoreField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmSetPointsUniformCoordinates()
469 PetscCall(DMSwarmRestoreField(sw, coordFields[0], NULL, NULL, (void **)&swarm_coor)); in DMSwarmSetPointsUniformCoordinates()
498 PetscErrorCode DMSwarmSetPointCoordinates(DM sw, PetscInt npoints, PetscReal coor[], PetscBool redu… in DMSwarmSetPointCoordinates() argument
520 DMSWARMPICVALID(sw); in DMSwarmSetPointCoordinates()
521 PetscCall(PetscObjectGetComm((PetscObject)sw, &comm)); in DMSwarmSetPointCoordinates()
524 PetscCall(DMSwarmGetCellDMActive(sw, &celldm)); in DMSwarmSetPointCoordinates()
526 …PetscCheck(Nfc == 1, PetscObjectComm((PetscObject)sw), PETSC_ERR_SUP, "We only support a single co… in DMSwarmSetPointCoordinates()
606 PetscCall(DMSwarmGetLocalSize(sw, &n_curr)); in DMSwarmSetPointCoordinates()
608 PetscCall(DMSwarmSetLocalSizes(sw, n_new_est, -1)); in DMSwarmSetPointCoordinates()
613 PetscCall(DMSwarmSetLocalSizes(sw, n_new_est, -1)); in DMSwarmSetPointCoordinates()
619 PetscCall(DMSwarmGetField(sw, coordFields[0], NULL, NULL, (void **)&swarm_coor)); in DMSwarmSetPointCoordinates()
620 PetscCall(DMSwarmGetField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmSetPointCoordinates()
629 PetscCall(DMSwarmRestoreField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmSetPointCoordinates()
630 PetscCall(DMSwarmRestoreField(sw, coordFields[0], NULL, NULL, (void **)&swarm_coor)); in DMSwarmSetPointCoordinates()
752 PetscErrorCode DMSwarmCreatePointPerCellCount(DM sw, PetscInt *ncells, PetscInt **count) in DMSwarmCreatePointPerCellCount() argument
761 PetscCall(DMSwarmSortGetIsValid(sw, &isvalid)); in DMSwarmCreatePointPerCellCount()
766 PetscCall(DMSwarmSortGetSizes(sw, &nel, NULL)); in DMSwarmCreatePointPerCellCount()
769 for (e = 0; e < nel; e++) PetscCall(DMSwarmSortGetNumberOfPointsPerCell(sw, e, &sum[e])); in DMSwarmCreatePointPerCellCount()
777 PetscCall(DMSwarmGetCellDMActive(sw, &celldm)); in DMSwarmCreatePointPerCellCount()
801 …SETERRQ(PetscObjectComm((PetscObject)sw), PETSC_ERR_SUP, "Cannot determine the number of cells for… in DMSwarmCreatePointPerCellCount()
802 …} else SETERRQ(PetscObjectComm((PetscObject)sw), PETSC_ERR_SUP, "Cannot determine the number of ce… in DMSwarmCreatePointPerCellCount()
806 PetscCall(DMSwarmGetLocalSize(sw, &npoints)); in DMSwarmCreatePointPerCellCount()
808 PetscCall(DMSwarmGetField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmCreatePointPerCellCount()
812 PetscCall(DMSwarmRestoreField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmCreatePointPerCellCount()
834 PetscErrorCode DMSwarmGetNumSpecies(DM sw, PetscInt *Ns) in DMSwarmGetNumSpecies() argument
836 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmGetNumSpecies()
856 PetscErrorCode DMSwarmSetNumSpecies(DM sw, PetscInt Ns) in DMSwarmSetNumSpecies() argument
858 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmSetNumSpecies()
880 PetscErrorCode DMSwarmGetCoordinateFunction(DM sw, PetscSimplePointFn **coordFunc) in DMSwarmGetCoordinateFunction() argument
882 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmGetCoordinateFunction()
885 PetscValidHeaderSpecific(sw, DM_CLASSID, 1); in DMSwarmGetCoordinateFunction()
904 PetscErrorCode DMSwarmSetCoordinateFunction(DM sw, PetscSimplePointFn *coordFunc) in DMSwarmSetCoordinateFunction() argument
906 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmSetCoordinateFunction()
909 PetscValidHeaderSpecific(sw, DM_CLASSID, 1); in DMSwarmSetCoordinateFunction()
930 PetscErrorCode DMSwarmGetVelocityFunction(DM sw, PetscSimplePointFn **velFunc) in DMSwarmGetVelocityFunction() argument
932 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmGetVelocityFunction()
935 PetscValidHeaderSpecific(sw, DM_CLASSID, 1); in DMSwarmGetVelocityFunction()
954 PetscErrorCode DMSwarmSetVelocityFunction(DM sw, PetscSimplePointFn *velFunc) in DMSwarmSetVelocityFunction() argument
956 DM_Swarm *swarm = (DM_Swarm *)sw->data; in DMSwarmSetVelocityFunction()
959 PetscValidHeaderSpecific(sw, DM_CLASSID, 1); in DMSwarmSetVelocityFunction()
982 PetscErrorCode DMSwarmComputeLocalSize(DM sw, PetscInt N, PetscProbFn *density) in DMSwarmComputeLocalSize() argument
996 PetscCall(DMSwarmGetNumSpecies(sw, &Ns)); in DMSwarmComputeLocalSize()
997 PetscCall(DMSwarmGetCellDM(sw, &dm)); in DMSwarmComputeLocalSize()
1033 PetscCall(DMSwarmSetLocalSizes(sw, Np, 0)); in DMSwarmComputeLocalSize()
1034 PetscCall(DMSwarmGetCellDMActive(sw, &celldm)); in DMSwarmComputeLocalSize()
1036 PetscCall(DMSwarmGetField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmComputeLocalSize()
1042 PetscCall(DMSwarmRestoreField(sw, cellid, NULL, NULL, (void **)&swarm_cellid)); in DMSwarmComputeLocalSize()
1059 PetscErrorCode DMSwarmComputeLocalSizeFromOptions(DM sw) in DMSwarmComputeLocalSizeFromOptions() argument
1069 PetscCallMPI(MPI_Comm_size(PetscObjectComm((PetscObject)sw), &size)); in DMSwarmComputeLocalSizeFromOptions()
1070 PetscCallMPI(MPI_Comm_rank(PetscObjectComm((PetscObject)sw), &rank)); in DMSwarmComputeLocalSizeFromOptions()
1072 PetscOptionsBegin(PetscObjectComm((PetscObject)sw), "", "DMSwarm Options", "DMSWARM"); in DMSwarmComputeLocalSizeFromOptions()
1075 PetscCall(DMSwarmGetNumSpecies(sw, &Ns)); in DMSwarmComputeLocalSizeFromOptions()
1077 if (flg) PetscCall(DMSwarmSetNumSpecies(sw, Ns)); in DMSwarmComputeLocalSizeFromOptions()
1083 PetscCall(DMSwarmGetNumSpecies(sw, &Ns)); in DMSwarmComputeLocalSizeFromOptions()
1085 …PetscCheck(coordFunc, PetscObjectComm((PetscObject)sw), PETSC_ERR_ARG_WRONG, "Could not locate fun… in DMSwarmComputeLocalSizeFromOptions()
1086 PetscCall(DMSwarmGetNumSpecies(sw, &Ns)); in DMSwarmComputeLocalSizeFromOptions()
1087 PetscCall(DMSwarmSetLocalSizes(sw, N[rank] * Ns, 0)); in DMSwarmComputeLocalSizeFromOptions()
1088 PetscCall(DMSwarmSetCoordinateFunction(sw, coordFunc)); in DMSwarmComputeLocalSizeFromOptions()
1090 PetscCall(DMGetDimension(sw, &dim)); in DMSwarmComputeLocalSizeFromOptions()
1091 PetscCall(PetscObjectGetOptionsPrefix((PetscObject)sw, &prefix)); in DMSwarmComputeLocalSizeFromOptions()
1093 PetscCall(DMSwarmComputeLocalSize(sw, N[rank], pdf)); in DMSwarmComputeLocalSizeFromOptions()
1114 PetscErrorCode DMSwarmInitializeCoordinates(DM sw) in DMSwarmInitializeCoordinates() argument
1128 PetscCall(DMGetDimension(sw, &dim)); in DMSwarmInitializeCoordinates()
1129 PetscCall(DMSwarmGetLocalSize(sw, &Np)); in DMSwarmInitializeCoordinates()
1130 PetscCall(DMSwarmGetNumSpecies(sw, &Ns)); in DMSwarmInitializeCoordinates()
1131 PetscCall(DMSwarmGetCoordinateFunction(sw, &coordFunc)); in DMSwarmInitializeCoordinates()
1133 PetscCall(DMSwarmGetCellDMActive(sw, &celldm)); in DMSwarmInitializeCoordinates()
1135 …PetscCheck(Nfc == 1, PetscObjectComm((PetscObject)sw), PETSC_ERR_SUP, "We only support a single co… in DMSwarmInitializeCoordinates()
1137 PetscCall(DMSwarmGetField(sw, coordFields[0], &bs, &dtype, (void **)&x)); in DMSwarmInitializeCoordinates()
1138 PetscCall(DMSwarmGetField(sw, "w_q", &bs, &dtype, (void **)&weight)); in DMSwarmInitializeCoordinates()
1139 PetscCall(DMSwarmGetField(sw, "species", NULL, NULL, (void **)&species)); in DMSwarmInitializeCoordinates()
1141 PetscCall(DMGetApplicationContext(sw, &ctx)); in DMSwarmInitializeCoordinates()
1156 PetscCall(DMSwarmGetCellDM(sw, &dm)); in DMSwarmInitializeCoordinates()
1158 PetscCall(DMGetApplicationContext(sw, &ctx)); in DMSwarmInitializeCoordinates()
1164 PetscCall(DMSwarmSortGetAccess(sw)); in DMSwarmInitializeCoordinates()
1170 PetscCall(DMSwarmSortGetPointsPerCell(sw, c, &Npc, &pidx)); in DMSwarmInitializeCoordinates()
1182 PetscCall(DMSwarmSortRestorePointsPerCell(sw, c, &Npc, &pidx)); in DMSwarmInitializeCoordinates()
1185 PetscCall(DMSwarmSortRestoreAccess(sw)); in DMSwarmInitializeCoordinates()
1187 PetscCall(DMSwarmRestoreField(sw, coordFields[0], NULL, NULL, (void **)&x)); in DMSwarmInitializeCoordinates()
1188 PetscCall(DMSwarmRestoreField(sw, "w_q", NULL, NULL, (void **)&weight)); in DMSwarmInitializeCoordinates()
1189 PetscCall(DMSwarmRestoreField(sw, "species", NULL, NULL, (void **)&species)); in DMSwarmInitializeCoordinates()
1191 PetscCall(DMSwarmMigrate(sw, removePoints)); in DMSwarmInitializeCoordinates()
1192 PetscCall(DMLocalizeCoordinates(sw)); in DMSwarmInitializeCoordinates()
1213 PetscErrorCode DMSwarmInitializeVelocities(DM sw, PetscProbFn *sampler, const PetscReal v0[]) in DMSwarmInitializeVelocities() argument
1222 PetscCall(DMSwarmGetVelocityFunction(sw, &velFunc)); in DMSwarmInitializeVelocities()
1224 PetscCall(DMGetDimension(sw, &dim)); in DMSwarmInitializeVelocities()
1225 PetscCall(DMSwarmGetLocalSize(sw, &Np)); in DMSwarmInitializeVelocities()
1226 PetscCall(DMSwarmGetField(sw, "velocity", NULL, NULL, (void **)&v)); in DMSwarmInitializeVelocities()
1227 PetscCall(DMSwarmGetField(sw, "species", NULL, NULL, (void **)&species)); in DMSwarmInitializeVelocities()
1231 PetscCall(DMGetApplicationContext(sw, &ctx)); in DMSwarmInitializeVelocities()
1242 PetscCall(PetscRandomCreate(PetscObjectComm((PetscObject)sw), &rnd)); in DMSwarmInitializeVelocities()
1256 PetscCall(DMSwarmRestoreField(sw, "velocity", NULL, NULL, (void **)&v)); in DMSwarmInitializeVelocities()
1257 PetscCall(DMSwarmRestoreField(sw, "species", NULL, NULL, (void **)&species)); in DMSwarmInitializeVelocities()
1274 PetscErrorCode DMSwarmInitializeVelocitiesFromOptions(DM sw, const PetscReal v0[]) in DMSwarmInitializeVelocitiesFromOptions() argument
1283 PetscOptionsBegin(PetscObjectComm((PetscObject)sw), "", "DMSwarm Options", "DMSWARM"); in DMSwarmInitializeVelocitiesFromOptions()
1290 …PetscCheck(velFunc, PetscObjectComm((PetscObject)sw), PETSC_ERR_ARG_WRONG, "Could not locate funct… in DMSwarmInitializeVelocitiesFromOptions()
1291 PetscCall(DMSwarmSetVelocityFunction(sw, velFunc)); in DMSwarmInitializeVelocitiesFromOptions()
1293 PetscCall(DMGetDimension(sw, &dim)); in DMSwarmInitializeVelocitiesFromOptions()
1294 PetscCall(PetscObjectGetOptionsPrefix((PetscObject)sw, &prefix)); in DMSwarmInitializeVelocitiesFromOptions()
1296 PetscCall(DMSwarmInitializeVelocities(sw, sampler, v0)); in DMSwarmInitializeVelocitiesFromOptions()