1!     CalculiX - A 3-dimensional finite element program
2!              Copyright (C) 1998-2021 Guido Dhondt
3!
4!     This program is free software; you can redistribute it and/or
5!     modify it under the terms of the GNU General Public License as
6!     published by the Free Software Foundation(version 2);
7!
8!
9!     This program is distributed in the hope that it will be useful,
10!     but WITHOUT ANY WARRANTY; without even the implied warranty of
11!     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12!     GNU General Public License for more details.
13!
14!     You should have received a copy of the GNU General Public License
15!     along with this program; if not, write to the Free Software
16!     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17!
18      subroutine materialdata_cp(imat,ntmat_,t1l,shcon,nshcon,cp)
19!
20      implicit none
21!
22!     determines the specific heat
23!
24      integer imat,ntmat_,id,nshcon(*),four
25!
26      real*8 t1l,shcon(0:3,ntmat_,*),cp
27!
28      four=4
29!
30!     calculating the specific heat
31!
32      call ident2(shcon(0,1,imat),t1l,nshcon(imat),four,id)
33      if(nshcon(imat).eq.0) then
34         continue
35      elseif(nshcon(imat).eq.1) then
36         cp=shcon(1,1,imat)
37      elseif(id.eq.0) then
38         cp=shcon(1,1,imat)
39      elseif(id.eq.nshcon(imat)) then
40         cp=shcon(1,id,imat)
41      else
42         cp=shcon(1,id,imat)+
43     &        (shcon(1,id+1,imat)-shcon(1,id,imat))*
44     &        (t1l-shcon(0,id,imat))/
45     &        (shcon(0,id+1,imat)-shcon(0,id,imat))
46      endif
47!
48      return
49      end
50
51
52
53
54
55
56
57