Special Vector manipulations
IXFplus_X
This is an interface to the IXFarray_X_plus_dataset_2d and IXFdataset_1d_X_plus_dataset_2d methods.
These subroutines will either add together a scalar 1-D array or an IXTdataset_1d object to every row of an IXTdataset_2d object. The order of the arguments is fixed, and for hte case of the IXTdataset_1d operation no checks are made on the units compatibility
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d,d2d_1, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFplus_X(wres,d2d,scalar1d,status) ! wres=d2d+scalar1d call IXFplus_X(wres,d2d,d2d_1,status) ! wres=d2d(n,m)+d2d_1(n,1) call IXFplus_X(wres,d2d,d1d,status) ! wres=d2d+d1d !using specific methods call IXFarray_X_plus_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d+scalar1d call IXFdataset_1d_X_plus_dataset_2d(wres,d2d,d1d,status) ! wres=d2d+d1d call IXFdataset_2d_X_plus_dataset_2d(wres,d2d,d2d_1,status) ! wres=d2d(n,m)+d2d_1(n,1)
IXFplus_Y
This is an interface to the IXFarray_Y_plus_dataset_2d and IXFdataset_1d_Y_plus_dataset_2d methods.
These subroutines will either add together a scalar 1-D array or an IXTdataset_1d object to every column of an IXTdataset_2d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFplus_Y(wres,d2d,scalar1d,status) ! wres=d2d+scalar1d call IXFplus_Y(wres,d2d,d1d,status) ! wres=d2d+d1d !using specific methods call IXFarray_Y_plus_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d+scalar1d call IXFdataset_1d_Y_plus_dataset_2d(wres,d2d,d1d,status) ! wres=d2d+d1d
IXFminus_X
This is an interface to the IXFarray_X_minus_dataset_2d and IXFdataset_1d_X_minus_dataset_2d methods.
These subroutines will either subtract a scalar 1-D array or an IXTdataset_1d object from every row of an IXTdataset_2d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFminus_X(wres,d2d,scalar1d,status) ! wres=d2d-scalar1d call IXFminus_X(wres,d2d,d1d,status) ! wres=d2d-d1d !using specific methods call IXFarray_X_minus_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d-scalar1d call IXFdataset_1d_X_minus_dataset_2d(wres,d2d,d1d,status) ! wres=d2d-d1d
IXFminus_Y
This is an interface to the IXFarray_Y_minus_dataset_2d and IXFdataset_1d_Y_minus_dataset_2d methods.
These subroutines will either subtract a scalar 1-D array or an IXTdataset_1d object from every column of an IXTdataset_2d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFminus_Y(wres,d2d,scalar1d,status) ! wres=d2d-scalar1d call IXFminus_Y(wres,d2d,d1d,status) ! wres=d2d-d1d !using specific methods call IXFarray_Y_minus_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d-scalar1d call IXFdataset_1d_Y_minus_dataset_2d(wres,d2d,d1d,status) ! wres=d2d-d1d
IXFtimes_X
This is an interface to the IXFarray_X_times_dataset_2d and IXFdataset_1d_X_times_dataset_2d methods.
These subroutines will either multiply a scalar 1-D array or an IXTdataset_1d object with every row of an IXTdataset_2d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFtimes_X(wres,d2d,scalar1d,status) ! wres=d2d*scalar1d call IXFtimes_X(wres,d2d,d1d,status) ! wres=d2d*d1d !using specific methods call IXFarray_X_times_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d*scalar1d call IXFdataset_1d_X_times_dataset_2d(wres,d2d,d1d,status) ! wres=d2d*d1d
IXFtimes_Y
This is an interface to the IXFarray_X_times_dataset_2d and IXFdataset_1d_X_times_dataset_2d methods.
These subroutines will either multiply a scalar 1-D array or an IXTdataset_1d object with every column of an IXTdataset_2d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFtimes_Y(wres,d2d,scalar1d,status) ! wres=d2d*scalar1d call IXFtimes_Y(wres,d2d,d1d,status) ! wres=d2d*d1d !using specific methods call IXFarray_Y_times_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d*scalar1d call IXFdataset_1d_Y_times_dataset_2d(wres,d2d,d1d,status) ! wres=d2d*d1d
IXFdivide_X
This is an interface to the IXFarray_X_divide_dataset_2d and IXFdataset_1d_X_divide_dataset_2d methods.
These subroutines will divide every row of an IXTdataset_2d object by either a scalar 1-D array or an IXTdataset_1d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFdivide_X(wres,d2d,scalar1d,status) ! wres=d2d/scalar1d call IXFdivide_X(wres,d2d,d1d,status) ! wres=d2d/d1d !using specific methods call IXFarray_X_divide_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d/scalar1d call IXFdataset_1d_X_divide_dataset_2d(wres,d2d,d1d,status) ! wres=d2d/d1d
IXFdivide_Y
This is an interface to the IXFarray_Y_divide_dataset_2d and IXFdataset_1d_Y_divide_dataset_2d methods.
These subroutines will divide every column of an IXTdataset_2d object by either a scalar 1-D array or an IXTdataset_1d object. The order of the arguments is fixed.
F90 syntax
use IXMdataset_2d use IXMdataset_1d type(IXTdataset_2d):: d2d, wres type(IXTdataset_1d):: d1d real(dp)::scalar1d(:) type(IXTstatus)::status : !using interface call IXFdivide_Y(wres,d2d,scalar1d,status) ! wres=d2d/scalar1d call IXFdivide_Y(wres,d2d,d1d,status) ! wres=d2d/d1d !using specific methods call IXFarray_Y_divide_dataset_2d(wres,d2d,scalar1d,status) ! wres=d2d/scalar1d call IXFdataset_1d_Y_divide_dataset_2d(wres,d2d,d1d,status) ! wres=d2d/d1d