This routine accumulates from input argment aVin into the output AttrVect argument aVout the real and integer attributes specified in input CHARACTER argument iList and rList. The attributes can be listed in any order. If neither iList nor rList are provided, all attributes shared between aVin and aVout will be copied.
If any attributes in aVout have different names but represent the the same quantity and should still be copied, you must provide a translation argument TrList and/or TiList. The translation arguments should be identical to the rList or iList but with the correct aVout name subsititued at the appropriate place.
N.B.: This routine will fail if the aVout is not initialized or if any of the specified attributes are not present in either aVout or aVin.
REVISION HISTORY:
2002 Sep 15 - ? - initial version.INTERFACE:
subroutine mct_aVect_accum(aVin, rList, TrList, iList, TiList, aVout)USES:
use m_die , only : die use m_stdio , only : stderr use m_String , only : String_toChar => toChar use m_String , only : String use m_String , only : String_init use m_String , only : String_clean => clean use m_List , only : List use m_List, only : List_get => get use m_List, only : List_nullify => nullify use m_List, only : List_clean => clean use m_List, only : init,nitem use m_AttrVect, only : AttrVect use m_AttrVect, only : lsize use m_AttrVect, only : SharedAttrIndexList implicit none INPUT/OUTPUT PARAMETERS type(AttrVect) ,intent(in) :: aVin character(*), optional,intent(in) :: iList character(*), optional,intent(in) :: rList character(*), optional,intent(in) :: TiList character(*), optional,intent(in) :: TrList type(AttrVect) ,intent(inout) :: aVout