# ValueError: Requested fields not available for output

**URL:** <https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297>\
**Category:** PyLith\
**Created:** [September 19, 2025, 12:08pm UTC](https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297 "2025-09-19T12:08:19Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dyrussss](https://avatars.discourse-cdn.com/v4/letter/d/c89c15/32.png) [@Dyrussss](https://community.geodynamics.org/u/Dyrussss)\
**Post date:** [September 19, 2025, 12:08pm UTC](https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297/1 "2025-09-19T12:08:20Z")

</div>

Dear pylith team, I am working based on step03 in subduction-2d. I am trying to simulate several seismic cycles, but encountered the following error:

ValueError: Requested fields not available for output.  
Data provider: ‘faultcohesivekin’  
Field type: ‘vertex’  
Data type: ‘info’  
Available fields: ‘normal\_dir’ ‘final\_slip’ ‘slip\_time’ ‘final\_slip\_eq1’ ‘slip\_time\_eq1’ ‘final\_slip\_eq2’ ‘slip\_time\_eq2’ ‘final\_slip\_creep’ ‘slip\_time\_creep’ ‘strike\_dir’  
Fields not available: ‘final\_slip\_rupture’ ‘slip\_time\_rupture’  
application called MPI\_Abort(MPI\_COMM\_WORLD, -1) - process 0  
/home/crl/Desktop/pylith/pylith-2.2.2-linux-x86\_64/bin/nemesis: mpirun: exit 255

My .cfg file:

# Set earthquake sources to an array consisting of creep and 3 ruptures.

eq\_srcs = [creep,eq1,eq2]  
eq\_srcs.creep.origin\_time = 0.0_year  
eq\_srcs.eq1.origin\_time = 150.0_year  
eq\_srcs.eq2.origin\_time = 300.0\*year

# Coseismic eq1 ---------

[pylithapp.timedependent.interfaces.fault\_locked.eq\_srcs.eq1.slip\_function]  
slip.iohandler.filename = fault\_slip\_coseismic.spatialdb  
slip.query\_type = linear  
slip.label = Final\_slip\_eq1

# Slip time (relative to origin time) is uniform, so use UniformDB for convenience

slip\_time = spatialdata.spatialdb.UniformDB  
slip\_time.label = Slip\_time\_eq1  
slip\_time.values = [slip-time]  
slip\_time.data = [0.0\*year]

# Coseismic eq2 ---------

[pylithapp.timedependent.interfaces.fault\_locked.eq\_srcs.eq2.slip\_function]  
slip.iohandler.filename = fault\_slip\_coseismic.spatialdb  
slip.query\_type = linear  
slip.label = Final\_slip\_eq2

# Slip time (relative to origin time) is uniform, so use UniformDB for convenience

slip\_time = spatialdata.spatialdb.UniformDB  
slip\_time.label = Slip\_time\_eq2  
slip\_time.values = [slip-time]  
slip\_time.data = [0.0\*year]

# Creep ---------

[pylithapp.timedependent.interfaces.fault\_locked.eq\_srcs.creep]  
slip\_function = pylith.faults.ConstRateSlipFn

# The slip time and final slip are defined in spatial databases.

[pylithapp.timedependent.interfaces.fault\_locked.eq\_srcs.creep.slip\_function]  
slip\_rate.iohandler.filename = fault\_locked.spatialdb  
slip\_rate.query\_type = linear  
slip\_rate.label = Final slip

# Slip time is uniform, so use UniformDB for convenience

slip\_time = spatialdata.spatialdb.UniformDB  
slip\_time.label = Slip time  
slip\_time.values = [slip-time]  
slip\_time.data = [0.0\*year]

# ----------------------------------------------------------------------

# output

# ----------------------------------------------------------------------

# Domain

[pylithapp.problem.formulation.output.domain]  
writer.filename = output/step03.h5

# Ground surface

[pylithapp.problem.formulation.output.subdomain]  
writer.filename = output/step03-groundsurf.h5

# Faults

#[pylithapp.problem.interfaces.fault\_locked.output]  
writer = pylith.meshio.DataWriterHDF5  
writer.filename = output/step03-fault-locked.h5

# Materials

[pylithapp.timedependent.materials.concrust.output]  
writer.filename = output/step03-concrust.h5

[pylithapp.timedependent.materials.conmantle.output]  
writer.filename = output/step03-conmantle.h5

[pylithapp.timedependent.materials.oceancrust.output]  
writer.filename = output/step03-oceancrust.h5

[pylithapp.timedependent.materials.oceanmantle.output]  
writer.filename = output/step03-oceanmantle.h5

# End of file

Thank you very much for any help.

---

<div class="post-metadata">

**Author:** ![baagaard](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/baagaard/32/615_2.png) [@baagaard](https://community.geodynamics.org/u/baagaard)\
**Post date:** [September 19, 2025, 7:41pm UTC](https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297/2 "2025-09-19T19:41:15Z")

</div>

> Available fields: ‘normal\_dir’ ‘final\_slip’ ‘slip\_time’ ‘final\_slip\_eq1’ ‘slip\_time\_eq1’ ‘final\_slip\_eq2’ ‘slip\_time\_eq2’ ‘final\_slip\_creep’ ‘slip\_time\_creep’ ‘strike\_dir’  
> Fields not available: ‘final\_slip\_rupture’ ‘slip\_time\_rupture’

In PyLith v2 wIth multiple ruptures, the default values for the `info_fields` will not work, so you should specify what values you want in the `info` files. I would put all of the ones available (as given in the error message).

```cfg
[pylithapp.problem.interfaces.fault_locked.output]
vertex_info_fields = [normal_dir, final_slip, slip_time, final_slip_eq1, slip_time_eq1, final_slip_eq2, slip_time_eq2]

```

---

<div class="post-metadata">

**Author:** ![Dyrussss](https://avatars.discourse-cdn.com/v4/letter/d/c89c15/32.png) [@Dyrussss](https://community.geodynamics.org/u/Dyrussss)\
**Post date:** [September 20, 2025, 10:22am UTC](https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297/3 "2025-09-20T10:22:14Z")

</div>

Thank you for your valuable reply. The question has been resolved.  
Now I noticed that the groundsurf.h5 was not generated. What causes this problem?  
Thanks!

---

<div class="post-metadata">

**Author:** ![Dyrussss](https://avatars.discourse-cdn.com/v4/letter/d/c89c15/32.png) [@Dyrussss](https://community.geodynamics.org/u/Dyrussss)\
**Post date:** [September 20, 2025, 12:45pm UTC](https://community.geodynamics.org/t/valueerror-requested-fields-not-available-for-output/4297/4 "2025-09-20T12:45:36Z")

</div>

I have solved this problem. Thanks again.
