# PetscDSCopyBoundary
Copy all boundary condition objects to the new problem 
## Synopsis
```
#include "petscds.h" 
PetscErrorCode PetscDSCopyBoundary(PetscDS ds, PetscInt numFields, const PetscInt fields[], PetscDS newds)
```
Not collective


## Input Parameters

- ***ds        -*** The source `PetscDS` object
- ***numFields -*** The number of selected fields, or `PETSC_DEFAULT` for all fields
- ***fields    -*** The selected fields, or NULL for all fields



## Output Parameter

- ***newds     -*** The target `PetscDS`, now with a copy of the boundary conditions





## See Also
 `PetscDS`, `DMBoundary`, `PetscDSCopyEquations()`, `PetscDSSetResidual()`, `PetscDSSetJacobian()`, `PetscDSSetRiemannSolver()`, `PetscDSSetBdResidual()`, `PetscDSSetBdJacobian()`, `PetscDSCreate()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/dt/interface/dtds.c.html#PetscDSCopyBoundary">src/dm/dt/interface/dtds.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/dt/interface/dtds.c)


[Index of all DT routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
