ESCOMP / ESCOMP/CAM-SIMA

SE and Null dycores using wrong kind for physics timestep

Open
#320 0 comments 0 reactions 0 assignees View on GitHub
bug misc
Dominant language
No language data
Stars
9
Forks
22
Avg merge
8d 5h
Merged PRs (30d)
4

Description

### What happened?

In the registry the `timestep_for_physics` variable is defined with a kind of `kind_phys`. However, when that variable is set with the SE and null dycores it assumes that the kind is `r8`, and does no conversion from the `get_step_size` function, which technically returns an integer. This can result in compiler warnings and non-explicit data type conversions.

### What are the steps to reproduce the bug?

Look at the `stepon_timestep_init` subroutine for both the SE and null (none) dycore options.

### What CAM-SIMA hash were you using?

e69640a

### What machine were you running CAM-SIMA on?

Other (please explain below)

### What compiler were you using?

Other (please specify below)

### Path to a case directory, if applicable

_No response_

### Will you be addressing this bug yourself?

Any Software Engineer can do this

### Extra info

The solution for this bug is to keep the kind as `kind_phys` and do an explicit `real(get_step_size(), kind_phys)` conversion so that everything is explicitly `kind_phys`. There may also need to be explicit kind conversions for `dtime_phys` elsewhere if the timestep is used in other parts of the dycore as well (which usually assume `r8`).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.