(********************************************
  Version: 7.0
  Date: 2003/11/25
  This is shareware.
  Copyright (C) Michal Pohanka
  All rights reserved.

  Internet: http://www.volny.cz/profipohanka
 ********************************************)

unit HCConduct;

interface

uses  HCArrays, HCMaterial, HCModel;

function fHC_GetConductAccuracy: float; cdecl; external 'HC.DLL' name '?fHC_GetConductAccuracy@@YANXZ';
procedure fHC_SetConductAccuracy(accuracy: float); cdecl; external 'HC.DLL' name '?fHC_SetConductAccuracy@@YAXN@Z';
procedure fHC_SetConductModelAccuracy(accuracy: float); cdecl; external 'HC.DLL' name '?fHC_SetConductModelAccuracy@@YAXN@Z';

procedure fHC_FillCondEnth(var m: tHCModel; var db: tMatDB); cdecl; external 'HC.DLL' name '?fHC_FillCondEnth@@YAXAAUtHCModel@@AAUtMatDB@@@Z'; // fHC_PrepareModel is required; no error checking - speed is required;
function fHC_HC1TimeStep(var m: tHCModel; var db: tMatDB; dt: float; minIter: integer; var max_err: float): integer; cdecl; external 'HC.DLL' name '?fHC_HC1TimeStep@@YAHAAUtHCModel@@AAUtMatDB@@NHAAN@Z'; // returns number of iterations; fHC_PrepareModel is required; no error checking - speed is required; if max_err==0 then number of iterations==minIter else iterations>=3 and err<max_err; everytime is iterations<=m.maxIterations

procedure fHC_FillCondEnthAdv(var m: tHCModel; var db: tMatDB); cdecl; external 'HC.DLL' name '?fHC_FillCondEnthAdv@@YAXAAUtHCModel@@AAUtMatDB@@@Z'; // fHC_PrepareModel is required; no error checking - speed is required;
function fHC_HC1TimeStepAdv(var m: tHCModel; var db: tMatDB; dt: float; minIter: integer; var max_err: float): integer; cdecl; external 'HC.DLL' name '?fHC_HC1TimeStepAdv@@YAHAAUtHCModel@@AAUtMatDB@@NHAAN@Z'; // returns number of iterations; fHC_PrepareModel is required; no error checking - speed is required;
procedure fHC_FillCondEnthSimple(var m: tHCModel; var db: tMatDB); cdecl; external 'HC.DLL' name '?fHC_FillCondEnthSimple@@YAXAAUtHCModel@@AAUtMatDB@@@Z'; // fHC_PrepareModel is required; no error checking - speed is required;
function fHC_HC1TimeStepTest(var m: tHCModel; var db: tMatDB; dt: float; minIter: integer; var max_err: float; beta, gama: float): integer; cdecl; external 'HC.DLL' name '?fHC_HC1TimeStepTest@@YAHAAUtHCModel@@AAUtMatDB@@NHAANNN@Z'; // returns number of iterations; fHC_PrepareModel is required; no error checking - speed is required;

implementation

end.
