CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > SU2

Creating a custom objective function

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 7, 2013, 09:02
Default Creating a custom objective function
  #1
New Member
 
Join Date: May 2013
Posts: 8
Rep Power: 13
viit3 is on a distinguished road
Through a cursory glance at the code, I can see that objective functions go into the adjoint implementation in adjoint_solution_mean. Is that the only place where objective functions go/

I wanted to implement a custom objective function for pressure recovery for internal flows. How would I go about doing that?
viit3 is offline   Reply With Quote

Old   May 12, 2013, 12:04
Default
  #2
Super Moderator
 
Francisco Palacios
Join Date: Jan 2013
Location: Long Beach, CA
Posts: 404
Rep Power: 15
fpalacios is on a distinguished road
Quote:
Originally Posted by viit3 View Post
Through a cursory glance at the code, I can see that objective functions go into the adjoint implementation in adjoint_solution_mean. Is that the only place where objective functions go/

I wanted to implement a custom objective function for pressure recovery for internal flows. How would I go about doing that?
Hi,
As you know, SU2 design uses the continuous adjoint methodology, more details in:
http://www.stanford.edu/~fasispg/art...-2013-0287.pdf
http://adl.stanford.edu/papers/AIAA-2012-3018.pdf
http://www.stanford.edu/~fasispg/art..._March2012.pdf
http://www.stanford.edu/~fasispg/art...urnal_2009.pdf
http://www.stanford.edu/~fasispg/art...urnal_2007.pdf

A new objective function will require changes in the adjoint boundary conditions:
void CAdjEulerSolution::SetForceProj_Vector(CGeometry *geometry, CSolution **solution_container, CConfig *config)

and in the formula for computing the surface sensitivity.
void CAdjEulerSolution::Inviscid_Sensitivity(CGeometry *geometry, CSolution **solution_container, CNumerics *solver, CConfig *config)

Currently we are working on a discrete and a hybrid adjoint (it will be finished at the end of the year).

Thank you for you interest in SU2,
Best,
Francisco
fpalacios is offline   Reply With Quote

Old   July 3, 2013, 08:22
Default
  #3
New Member
 
Join Date: May 2013
Posts: 8
Rep Power: 13
viit3 is on a distinguished road
I was going through some of the literature.

From what I understand, the formulation only takes surface integrals as an objective which is specified in

void CAdjEulerSolution::SetForceProj_Vector(CGeometry *geometry, CSolution **solution_container, CConfig *config)

Is that correct?

I don't understand what I have to change in

void CAdjEulerSolution::Inviscid_Sensitivity(CGeometry *geometry, CSolution **solution_container, CNumerics *solver, CConfig *config)

since the only term related to the objective function is d which is coming from SetForceProj_Vector.

Again, is this statement correct?

For an initial attempt, I want to do an incompressible Euler optimization. Is that possible?

Thank you for all the help.
viit3 is offline   Reply With Quote

Reply

Tags
adjoint, objective function


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Other] mesh airfoil NACA0012 anand_30 OpenFOAM Meshing & Mesh Conversion 13 March 7, 2022 18:22
[swak4Foam] installation problem with version 0.2.3 Claudio87 OpenFOAM Community Contributions 9 May 8, 2013 11:20
channelFoam for a 3D pipe AlmostSurelyRob OpenFOAM 3 June 24, 2011 14:06
Force Report help~ or maybe Custom Field Function sailor FLUENT 0 April 13, 2011 04:45
Compilation errors in ThirdPartymallochoard feng_w OpenFOAM Installation 1 January 25, 2009 07:59


All times are GMT -4. The time now is 07:04.