-
Notifications
You must be signed in to change notification settings - Fork 159
Modern diag_manager: Add standard_name and coordinates attributes + minor bug fixes #1176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
c68a925
e3ad056
f59663b
d82d3f5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -41,6 +41,7 @@ module fms_diag_yaml_mod | |
| use, intrinsic :: iso_c_binding, only : c_ptr, c_null_char | ||
| use fms_string_utils_mod, only: fms_array_to_pointer, fms_find_my_string, fms_sort_this, fms_find_unique | ||
| use platform_mod, only: r4_kind, i4_kind | ||
| use fms_mod, only: lowercase | ||
|
|
||
| implicit none | ||
|
|
||
|
|
@@ -413,7 +414,8 @@ subroutine diag_yaml_object_init(diag_subset_output) | |
| call fill_in_diag_files(diag_yaml_id, diag_file_ids(i), diag_yaml%diag_files(file_count)) | ||
|
|
||
| !> Save the file name in the file_list | ||
| file_list%file_name(file_count) = trim(diag_yaml%diag_files(file_count)%file_fname)//c_null_char | ||
| !! The diag_table is not case sensitive (so we are saving it as lowercase) | ||
| file_list%file_name(file_count) = lowercase(trim(diag_yaml%diag_files(file_count)%file_fname)//c_null_char) | ||
| file_list%diag_file_indices(file_count) = file_count | ||
|
|
||
| nvars = 0 | ||
|
|
@@ -441,6 +443,8 @@ subroutine diag_yaml_object_init(diag_subset_output) | |
| !> Save the variable name and the module name in the variable_list | ||
| variable_list%var_name(var_count) = trim(diag_yaml%diag_fields(var_count)%var_varname)//& | ||
| ":"//trim(diag_yaml%diag_fields(var_count)%var_module)//c_null_char | ||
| !! The diag_table is not case sensitive (so we are saving it as lowercase) | ||
| variable_list%var_name(var_count) = lowercase(variable_list%var_name(var_count)) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why can't users have a capital letter for the var name? I always think of temperature as
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. They can have capital letters. This is for when we are searching for the variable name in the diag_table.yaml. The old diag manager was not case sensitive. So in the The variable_list is the sorted list of variables, in the diag_yaml it saved at whatever is in the diag_table.yaml |
||
| variable_list%diag_field_indices(var_count) = var_count | ||
| enddo nvars_loop | ||
| deallocate(var_ids) | ||
|
|
@@ -1434,7 +1438,7 @@ function find_diag_field(diag_field_name, module_name) & | |
| integer, allocatable :: indices(:) | ||
|
|
||
| indices = fms_find_my_string(variable_list%var_pointer, size(variable_list%var_pointer), & | ||
| & trim(diag_field_name)//":"//trim(module_name)//c_null_char) | ||
| & lowercase(trim(diag_field_name))//":"//lowercase(trim(module_name)//c_null_char)) | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This one I actually agree with because the actual modules are all lower case (i think) |
||
| end function find_diag_field | ||
|
|
||
| !> @brief Gets the diag_field entries corresponding to the indices of the sorted variable_list | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why would we impose this? Why can't users have capital letters in the file names?