mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-11-04 05:50:31 -05:00 
			
		
		
		
	
		
			
	
	
		
			43 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								[/============================================================================
							 | 
						||
| 
								 | 
							
								  Boost.odeint
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Copyright 2011 Mario Mulansky
							 | 
						||
| 
								 | 
							
								  Copyright 2011-2012 Karsten Ahnert
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Use, modification and distribution is subject to the Boost Software License,
							 | 
						||
| 
								 | 
							
								  Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
							 | 
						||
| 
								 | 
							
								  http://www.boost.org/LICENSE_1_0.txt)
							 | 
						||
| 
								 | 
							
								=============================================================================/]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[section Implicit System]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[heading Description]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This concept describes how to define a ODE that can be solved by an implicit routine.
							 | 
						||
| 
								 | 
							
								Implicit routines need not only the function /f(x,t)/ but also the Jacobian /df/dx = A(x,t)/.
							 | 
						||
| 
								 | 
							
								/A/ is a matrix and implicit routines need to solve the linear problem /Ax = b/.
							 | 
						||
| 
								 | 
							
								In odeint this is implemented with use of __ublas, therefore, the ['state_type] implicit routines is ['ublas::vector] and the matrix is defined as ['ublas::matrix].
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[heading Notation]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[variablelist
							 | 
						||
| 
								 | 
							
								  [[`System`] [A type that is a model of `Implicit System`]]
							 | 
						||
| 
								 | 
							
								  [[`Time`] [A type representing the time of the ODE]]
							 | 
						||
| 
								 | 
							
								  [[`sys`] [An object of type `System`]]
							 | 
						||
| 
								 | 
							
								  [[`x`] [Object of type ublas::vector]]
							 | 
						||
| 
								 | 
							
								  [[`dxdt`] [Object of type ublas::vector]]
							 | 
						||
| 
								 | 
							
								  [[`jacobi`] [Object of type ublas::matrix]]
							 | 
						||
| 
								 | 
							
								  [[`t`] [Object of type `Time`]]
							 | 
						||
| 
								 | 
							
								]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[heading Valid Expressions]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[table
							 | 
						||
| 
								 | 
							
								  [[Name] [Expression] [Type] [Semantics]]
							 | 
						||
| 
								 | 
							
								  [[Calculate ['dx/dt := f(x,t)]] [`sys.first( x , dxdt , t )`] [`void`] [Calculates `f(x,t)`, the result is stored into dxdt] ]
							 | 
						||
| 
								 | 
							
								  [[Calculate ['A := df/dx (x,t)]] [`sys.second( x , jacobi , t )`] [`void`] [Calculates the Jacobian of /f/ at /x/,/t/, the result is stored into `jacobi`] ]
							 | 
						||
| 
								 | 
							
								]
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[endsect]
							 |