|
◆ pack_distinct_var6d()
type(volgrid6d_var) function, dimension(dim) volgrid6d_var_class::pack_distinct_var6d |
( |
type(volgrid6d_var), dimension(:), intent(in) |
vect, |
|
|
integer, intent(in) |
dim, |
|
|
logical, dimension(:), intent(in), optional |
mask, |
|
|
logical, intent(in), optional |
back |
|
) |
| |
|
private |
compatta gli elementi distinti di vect in un array
Definizione alla linea 669 del file volgrid6d_var_class.F90.
672 END SUBROUTINE vg6d_v7d_var_conv_setup
675 ELEMENTAL FUNCTION conv_func_eq(this, that) RESULT(res)
676 TYPE(conv_func), INTENT(IN) :: this, that
679 res = this%a == that%a .AND. this%b == that%b
681 END FUNCTION conv_func_eq
684 ELEMENTAL FUNCTION conv_func_ne(this, that) RESULT(res)
685 TYPE(conv_func), INTENT(IN) :: this, that
688 res = .NOT.(this == that)
690 END FUNCTION conv_func_ne
693 FUNCTION conv_func_mult(this, that) RESULT(mult)
694 TYPE(conv_func), INTENT(in) :: this
695 TYPE(conv_func), INTENT(in) :: that
697 TYPE(conv_func) :: mult
699 IF (this == conv_func_miss .OR. that == conv_func_miss) THEN
700 mult = conv_func_miss
702 mult%a = this%a*that%a
703 mult%b = this%a*that%b+this%b
706 END FUNCTION conv_func_mult
715 ELEMENTAL SUBROUTINE conv_func_compute(this, values)
716 TYPE(conv_func), INTENT(in) :: this
717 REAL, INTENT(inout) :: values
719 IF (this /= conv_func_miss) THEN
720 IF (c_e(values)) values = values*this%a + this%b
725 END SUBROUTINE conv_func_compute
735 ELEMENTAL FUNCTION conv_func_convert(this, values) RESULT(convert)
736 TYPE(conv_func), intent(in) :: this
737 REAL, INTENT(in) :: values
|