ഉപയോക്താവ് നിർവചിച്ച ബാഹ്യ ലോഡ് പ്രോസസ്സിംഗ് സബ്റൂട്ടീൻ (uload.f)¶
ഉപയോക്താവ് നിർവചിച്ച ബാഹ്യ ലോഡുകൾ പ്രോസസ് ചെയ്യുന്നതിനുള്ള ഇന്റർഫേസ് നൽകുന്നു.
ഉപയോക്താവ് നിർവചിച്ച ബാഹ്യ ലോഡ് ഉപയോഗിക്കാൻ, ആദ്യം ബാഹ്യ ലോഡ് നിർവചിക്കുന്ന സംഖ്യാത്മക ഘടന tULoad നിർവചിക്കുക; തുടർന്ന് ഇൻപുട്ട് ഫയലിലെ !ULOAD, FILE=ഫയൽനാമം ഉപയോഗിച്ച് ആ ഫയൽനാമം സൂചിപ്പിക്കുന്ന ഫയലിൽ നിന്ന് നിർവചനം വായിക്കുക. അതിനുശേഷം താഴെ പറയുന്ന ഇന്റർഫേസുകൾ ഉപയോഗിച്ച് ബാഹ്യ ലോഡ് ഉൾപ്പെടുത്തുക.
(1) ബാഹ്യ ലോഡ് വായിക്കുന്ന സബ്റൂട്ടീൻ¶
fname: ബാഹ്യ ഫയലിന്റെ പേര്. ഈ ഫയലിൽ നിന്ന് ഉപയോക്താവ് നിർവചിച്ച ബാഹ്യ ലോഡ് വായിക്കുന്നു.
(2) ബാഹ്യ ലോഡിനെ മൊത്തം ലോഡ് വെക്റ്ററിലേക്ക് ഉൾപ്പെടുത്തുന്ന സബ്റൂട്ടീൻ¶
subroutine uloading( cstep, factor, exForce )
integer, INTENT(IN) :: cstep
REAL(KIND=kreal), INTENT(IN) :: factor
REAL(KIND=kreal), INTENT(INOUT) :: exForce(:)
cstep: നിലവിലെ വിശകലന സ്റ്റെപ്പുകളുടെ എണ്ണംfactor: നിലവിലെ സ്റ്റെപ്പിന്റെ ലോഡ് ഗുണകംexForce: മൊത്തം ലോഡ് വെക്റ്റർ
(3) അവശിഷ്ട ബലം കണക്കാക്കുന്ന സബ്റൂട്ടീൻ¶
subroutine uResidual( cstep, factor, residual )
integer, INTENT(IN) :: cstep
REAL(KIND=kreal), INTENT(IN) :: factor
REAL(KIND=kreal), INTENT(INOUT) :: residual(:)
cstep: നിലവിലെ വിശകലന സ്റ്റെപ്പുകളുടെ എണ്ണംfactor: നിലവിലെ സ്റ്റെപ്പിന്റെ ലോഡ് ഗുണകംresidual: മൊത്തം അവശിഷ്ട ബല വെക്റ്റർ