# NEMO4.2.1-FABM coupling optical module

**URL:** <https://nemo-ocean.discourse.group/t/nemo4-2-1-fabm-coupling-optical-module/940>\
**Category:** v4.2.x\
**Created:** [11 August 2025 13:10 UTC](https://nemo-ocean.discourse.group/t/nemo4-2-1-fabm-coupling-optical-module/940 "2025-08-11T13:10:10Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Josefine](https://avatars.discourse-cdn.com/v4/letter/j/958977/32.png) [@Josefine](https://nemo-ocean.discourse.group/u/Josefine)\
**Post date:** [11 August 2025 13:10 UTC](https://nemo-ocean.discourse.group/t/nemo4-2-1-fabm-coupling-optical-module/940/1 "2025-08-11T13:10:10Z")

</div>

I am trying to do the coupling NEMO4.2.1-FABM-ERGOM2.1 together with an external bio-optical module OASIM. The module is compiled through FABM but it needs additional meteorological forcing parameters, such as cloud liquid water content and water vapour.

Physical ocean parameters such as SST and pressure can be passed via trcsms\_fabm.F90 to be used by the biogeochemical model. Also surface air pressure, apr, is being called:

`CALL model%link_horizontal_data(fabm_standard_variables%surface_air_pressure, apr(:,:))`

Is there a possibility to also pass surface air temperature, surface specific humidity and additionally load additional meteorological forcing parameters to be used by the biogeochemical model and the bio-optical module?

---

<div class="post-metadata">

**Author:** ![johannestimm](https://avatars.discourse-cdn.com/v4/letter/j/5f9b8f/32.png) [@johannestimm](https://nemo-ocean.discourse.group/u/johannestimm)\
**Post date:** [11 August 2025 16:16 UTC](https://nemo-ocean.discourse.group/t/nemo4-2-1-fabm-coupling-optical-module/940/2 "2025-08-11T16:16:10Z")

</div>

Potentially the some of the fields : theta\_zt,q\_zt or theta\_zu, q\_zu or ssq which are similar to the fields you are looking for should be available for integration into FABM with the code you mentioned.

These variables are only available if the computation of them is activated. I assume that for these ln\_blk=true is needed.

An alternative might be to use either the variables (for 3D different call for FABM needed) t\_abl,q\_abl (or tz1\_abl, qz1\_abl, tz1\_dta,qz1\_dta)

---

<div class="post-metadata">

**Author:** ![Josefine](https://avatars.discourse-cdn.com/v4/letter/j/958977/32.png) [@Josefine](https://nemo-ocean.discourse.group/u/Josefine)\
**Post date:** [22 August 2025 09:03 UTC](https://nemo-ocean.discourse.group/t/nemo4-2-1-fabm-coupling-optical-module/940/3 "2025-08-22T09:03:08Z")

</div>

In my namelist ln\_blk=TRUE is activated. I tried both:

`CALL model%link_horizontal_data(fabm_standard_variables%surface_temperature, theta_zt(:,:))`

alternatively

`CALL model%link_horizontal_data(fabm_standard_variables%surface_temperature, theta_zt)`

and each time I receive following error message:

```auto
link_horizontal_data_by_variable: surface_temperature: extents of provided array do not match domain extents.

```

What is the correct way to link surface temperature with FABM?
