|
◆ 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 671 del file volgrid6d_var_class.F90.
674 END SUBROUTINE vg6d_v7d_var_conv_setup
677 ELEMENTAL FUNCTION conv_func_eq(this, that) RESULT(res)
678 TYPE(conv_func), INTENT(IN) :: this, that
681 res = this%a == that%a .AND. this%b == that%b
683 END FUNCTION conv_func_eq
686 ELEMENTAL FUNCTION conv_func_ne(this, that) RESULT(res)
687 TYPE(conv_func), INTENT(IN) :: this, that
690 res = .NOT.(this == that)
692 END FUNCTION conv_func_ne
695 FUNCTION conv_func_mult(this, that) RESULT(mult)
696 TYPE(conv_func), INTENT(in) :: this
697 TYPE(conv_func), INTENT(in) :: that
699 TYPE(conv_func) :: mult
701 IF (this == conv_func_miss .OR. that == conv_func_miss) THEN
702 mult = conv_func_miss
704 mult%a = this%a*that%a
705 mult%b = this%a*that%b+this%b
708 END FUNCTION conv_func_mult
717 ELEMENTAL SUBROUTINE conv_func_compute(this, values)
718 TYPE(conv_func), INTENT(in) :: this
719 REAL, INTENT(inout) :: values
721 IF (this /= conv_func_miss) THEN
722 IF (c_e(values)) values = values*this%a + this%b
727 END SUBROUTINE conv_func_compute
737 ELEMENTAL FUNCTION conv_func_convert(this, values) RESULT(convert)
738 TYPE(conv_func), intent(in) :: this
739 REAL, INTENT(in) :: values
|